在我的pandas数据框中,我想找出以月份为单位的日期之间的差异。函数.dt.to_period('M')
生成一个MonthEnd对象,比如<11 * MonthEnds>
,而不是月份号。在
我试图用pd.to_numeric()
更改列类型,并删除带有re.sub("[^0-9]", "", 'blablabla123bla')
的字母。两者都不适用于MonthEnd
对象。在
df['duration_dataset'] = df['date_1'].dt.to_period('M') - df['date_2'].dt.to_period('M')
我期望11,但是输出是<11 * MonthEnds>
。在
这是一个最小的数据帧
^{pr2}$
这是new behaviour in Pandas 0.24,其中减去} subclass 。在
Period()
对象得到一个^{您可以从
DateOffset.n
属性中获取数值:这就产生了
^{pr2}$对于示例数据帧。在
您可以将日期转换为自0年起的月数,而不是将日期转换为期间,然后减去这些数字:
相关问题 更多 >
编程相关推荐