Olg*_* Mu 3 python datetime pandas
假设我有一个包含两个日期的列的数据框,我想创建一个新列,其值是这些日期之间的月数.
>df
Index Date1 Date2
1 2012/03/07 2013/03/16
2 2012/12/05 2012/12/25
3 2010/06/30 2013/05/19
4 2002/11/02 2011.06.08
df["Date1"]= pd.to_datetime(df["Date1"])
df["Date2"]= pd.to_datetime(df["Date2"])
Run Code Online (Sandbox Code Playgroud)
Date1将始终位于date2之前.我目前的这种方法需要大约10个步骤,我很确定有一个更简单的方法来做到这一点.思考?
看到这个链接:http://pandas.pydata.org/pandas-docs/dev/timeseries.html#time-deltas
(df['Date2']-df['Date1']).apply(lambda x: x/np.timedelta64(1,'M'))
Run Code Online (Sandbox Code Playgroud)
for numpy> = 1.7(如果您使用的是1.6.1,请参阅链接)
我不知道它会对分数做什么.(通常我会除以np.timedelta64(1,'D')
那么除以30表示一个小数的月数(作为一个浮点数)
归档时间: |
|
查看次数: |
5513 次 |
最近记录: |