我有以下的datetime数据框:如何在datetime数据框中获取多年的月份数?
df = pd.DataFrame({'year': [2015, 2015 ,2016,2014], 'month': [2,11, 3,9], 'day': [4,21, 5,10]})
df = pd.to_datetime(df)
我想要得到的 'MONTH_NUMBER'。对应于跨越多年连续一个月算我期望的结果将是:
我有以下的datetime数据框:如何在datetime数据框中获取多年的月份数?
df = pd.DataFrame({'year': [2015, 2015 ,2016,2014], 'month': [2,11, 3,9], 'day': [4,21, 5,10]})
df = pd.to_datetime(df)
我想要得到的 'MONTH_NUMBER'。对应于跨越多年连续一个月算我期望的结果将是:
(df.year - min(df.year))* 12 + df.month
使用
In [5078]: df.month + 12*(df.year - df.year.iloc[0])
Out[5078]:
0 2
1 11
2 15
dtype: int64
同
In [5079]: df.month.add(df.year.sub(df.year.iloc[0]).mul(12))
Out[5079]:
0 2
1 11
2 15
dtype: int64
如果我有这个数据帧:'df = pd.DataFrame({'year':[2015,2015,2016,2014], 'month':[2,11,3 ,9], 'day':[4,21,5,10]}) df = pd.to_datetime(df)',我怎样才能得到这个输出:6,15,19,1 – user121
月份数字如何可以是15? –
@FlashThunder不是月份数,月数 – chrisz