Python熊猫。日期对象由单独的列拆分。

时间:2018-04-30 13:16:29

标签: python pandas datetime time-series pandas-groupby

我的Python(熊猫)日期写成“1/31/2010”。要应用线性回归,我想要有3个单独的变量:日期数,月数,年数。

将包含pandas日期的列拆分为3列的方法是什么? 另一个问题是将相同但分组的天数分为3组:1-10,11-20,21-31。

2 个答案:

答案 0 :(得分:3)

df['date'] = pd.to_datetime(df['date'])

#Create 3 additional columns
df['day'] = df['date'].dt.day
df['month'] = df['date'].dt.month
df['year'] = df['date'].dt.year

理想情况下,您无需另外创建3个列就可以执行此操作,只需将Series传递给您的函数即可。

In [2]: pd.to_datetime('01/31/2010').day
Out[2]: 31

In [3]: pd.to_datetime('01/31/2010').month
Out[3]: 1

In [4]: pd.to_datetime('01/31/2010').year
Out[4]: 2010

答案 1 :(得分:0)

这只回答了您的第一个问题

一种解决方案是使用Supervision.Resume提取pd.Timestamp个对象的属性。

此方法的好处是您可以轻松扩展/更改所需的属性。此外,逻辑并非特定于对象类型。

operator.attrgetter