开发者社区> 问答> 正文

将datetime。pandas.core.series日期。系列在Python中?

问题陈述:(多元线性回归)一个数字媒体公司(Netflix等)推出了一个节目。起初,该节目反响不错,但随后收视率下降。公司想找出问题出在哪里。 我想创建一个额外的列I。e media['days']基本上记录了电视剧的总天数。假设节目的第一天是在2017年3月1日,i。e 2017-03-1。 我写的代码如下。

media['Date'] = pd.to_datetime(media['Date'])

#deriving "days since the show started"
import datetime

d0 = date(2017, 2, 28)
d1 = media.Date             #media is a dataframe variable
delta = d1 - d0
media['Day'] = delta

我得到的误差是

---------------------------------------------------------------------------
TypeError                                 Traceback (most recent call last)
 in 
      3 d0 = date(2017, 2, 28)
      4 d1 = media.Date             #media is a dataframe variable
----> 5 delta = d1 - d0
      6 media['Day'] = delta

c:\DEV\work\lib\site-packages\pandas\core\ops\__init__.py in wrapper(left, right)
    990             # test_dt64_series_add_intlike, which the index dispatching handles
    991             # specifically.
--> 992             result = dispatch_to_index_op(op, left, right, pd.DatetimeIndex)
    993             return construct_result(
    994                 left, result, index=left.index, name=res_name, dtype=result.dtype

c:\DEV\work\lib\site-packages\pandas\core\ops\__init__.py in dispatch_to_index_op(op, left, right, 
index_class)
628         left_idx = left_idx._shallow_copy(freq=None)
629     try:
--> 630         result = op(left_idx, right)
631     except NullFrequencyError:
632         # DatetimeIndex and TimedeltaIndex with freq == None raise ValueError

TypeError: unsupported operand type(s) for -: 'DatetimeIndex' and 'datetime.date'

我可以看到数据类型是不匹配的。 d0的类型是:datetime。日期& d1的类型是:pandas.core. series.com 谁能帮我…我可以将d0的值转换/解析为与d1完全相同的值。 问题来源StackOverflow 地址:/questions/59380535/converting-datetime-date-to-pandas-core-series-series-in-python

展开
收起
kun坤 2019-12-28 14:14:13 654 0
1 条回答
写回答
取消 提交回答
  • 有必要转换日期时间。为了得到时间间隔。为此,必须将d0封装在pd.to_datetime中。 也就是说,下面的方法应该是可行的,给出一个以天为单位的增量,如果你只想要整数部分,你可以在日期时间序列上使用dt访问器。

    delta = d1 - pd.to_datetime(d0)
    # or
    delta = (d1 - pd.to_datetime(d0)).dt.days
    
    2019-12-28 14:14:21
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
Data Pre-Processing in Python: 立即下载
即学即用的Pandas入门与时间序列分析 立即下载
双剑合璧-Python和大数据计算平台的结合 立即下载