Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/348.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 为什么删除日期时间会产生溢出错误?_Python_Pandas_Date_Datetime - Fatal编程技术网

Python 为什么删除日期时间会产生溢出错误?

Python 为什么删除日期时间会产生溢出错误?,python,pandas,date,datetime,Python,Pandas,Date,Datetime,我试图得到一个年龄,从而从数据框中的日期中减去今天的日期。 因此,尝试这样做: (df .assign(dob = lambda x: pd.to_datetime(x.date,format='%Y%m%d')) .assign(age = lambda x: x.dob - pd.datetime.now()) ) 但是我得到了下面的错误,不明白为什么 OverflowError: Overflow in int64 addition 这是由于dob只有日期而now()有日期和时间造

我试图得到一个年龄,从而从数据框中的日期中减去今天的日期。 因此,尝试这样做:

(df
.assign(dob = lambda x:  pd.to_datetime(x.date,format='%Y%m%d'))
.assign(age = lambda x: x.dob - pd.datetime.now())
)
但是我得到了下面的错误,不明白为什么

OverflowError: Overflow in int64 addition


这是由于
dob
只有日期而
now()有日期和时间造成的
pd.datetime.now().strftime(“%Y%m%d”)
应该修复它。它的格式化方式与您的dob的格式化方式相同。

这是由于
dob
只有日期,而
now()有日期和时间造成的
pd.datetime.now().strftime(“%Y%m%d”)
应该修复它。它的格式化方式与您的dob的格式化方式相同。

assign/lambda结构对我来说似乎有点难理解-为什么不简单地以“传统方式”指定新列呢?e、 g.
df['dob']=pd.to_datetime(df['date'])
df['age']=pd.Timestamp('now')-df['dob']
。对于如何处理这个问题,还有一些想法。assign/lambda结构对我来说似乎有点难理解-为什么不简单地以“传统方式”分配新列呢?e、 g.
df['dob']=pd.to_datetime(df['date'])
df['age']=pd.Timestamp('now')-df['dob']
。还有一些方法。不幸的是没有。我也尝试了这个方法,得到了这个错误-:“DatetimeArray”和“datetime.date”不支持的操作数类型。
不幸的是没有。我也尝试了这个方法,得到了这个错误-:“DatetimeArray”和“datetime.date”不支持的操作数类型。