熊猫:如何从包含年,月和日的列中创建单个日期列?

时间:2019-02-01 20:57:30

标签: python pandas date

我有一个像这样的熊猫数据框:

year month day
2019     1  29
2019     1  30
2019     1  31
2019     2   1

我想创建一个具有适当数据类型的日期列,例如:

year month day date
2019     1  29 2019-01-29
2019     1  30 2019-01-30
2019     1  31 2019-01-31
2019     2   1 2019-02-01

我知道在Python中,我可以从其年/月/日部分中创建日期,如下所示:

>>> import datetime
>>> datetime.date(year=2019, month=1, day=29)
datetime.date(2019, 1, 29)

如何将其应用于数据框中的所有行以创建日期列?

2 个答案:

答案 0 :(得分:1)

此方法也有效;

Result

答案 1 :(得分:0)

这是一种实现方式

df1['date'] = [datetime.date(year=x[1].year, month=x[1].month, day=x[1].day) for x in df1.iterrows()]

输出:

   year  month  day        date
0  2019      1   29  2019-01-29
1  2019      1   30  2019-01-30
2  2019      1   31  2019-01-31
3  2019      2    1  2019-02-01