我有以下Pandas Dataframe
我想从date_of_death中减去date_of_birth来创建一个新的列“years_lived”来包含生活的年数。我尝试了以下三种方法(当然是单独的)
df['years_lived'] = (df['date_of_death'] - df['date_of_birth']).dt.days
df['years_lived'] = df['date_of_death'].sub(df['date_of_birth'], axis=0)
df['years_lived'] = df['date_of_death'] - df['date_of_birth']
但我得到了一个类型错误:- 不支持的操作数类型:“字符串”和“字符串”
3条答案
按热度按时间vulvrdjw1#
lsmepo6l2#
pd.to_datetime会将您的日期转换为datetime,您可以从中减去一个。
https://pandas.pydata.org/docs/reference/api/pandas.to_datetime.html
v09wglhw3#
在减法运算之前,你需要把日期的字符串表示转换成日期。
或
如果不起作用,则在之前转换,然后减去