我有以下datetime日期值:
a_date = datetime.date(2018,9,13)
以及具有以下列的数据帧df
:
df['somedates']
0 2010-07-27
1 1999-02-15
2 1997-07-15
3 2012-11-15
4 1999-02-17
5 1999-02-16
6 1999-02-17
7 2012-10-12
8 1999-09-22
9 1998-05-09
10 1998-05-09
Name: somedates, Length: 11, dtype: datetime64[ns]
我可以在我的Windows机器上执行以下操作,而且工作正常
df['somedates'] = a_date - df['somedates']
但是在ubuntu上,它会引发以下错误:
unsupported operand type(s) for -: 'DatetimeIndex' and 'datetime.date
有人能给我指出正确的方向吗?为什么它在windows上运行而在Linux上不运行?你知道吗
更多详细信息
print(type(a_date))
<class 'datetime.date'>
print(type(df['somedates']))
<class 'pandas.core.series.Series'>
print(type(df['somedates'][0]))
<class 'pandas._libs.tslib.Timestamp'>
既然我不能评论:
这不起作用的原因是,您试图将datetime的datetimes版本与datetime的pythons版本source一起使用。在你这种情况下,我要做的就是把所有的时间都转换成相同的日期pd.to\ U日期时间():
我还要看看this
相关问题 更多 >
编程相关推荐