将日期转换为日期

时间:2020-03-22 14:29:01

标签: python pandas

我正在尝试找到一种方法来将熊猫数据框中的包含月份(1、2,.. 30)的列转换为日期时间。年和月是静态的(例如,始终为2014年11月),并且不包含在数据框中。

示例:

day = 13转换为2014年11月13日。

day = 27转换为2014年11月27日。

1 个答案:

答案 0 :(得分:4)

使用to_datetime,将转换列转换为字符串,并在月份中加上年份:

df = pd.DataFrame({'day':[13,27,9,4,2,3]})

df['day'] = pd.to_datetime('2014-01-' + df['day'].astype(str))

或将参数originunit一起使用,但必须减去1:

df['day'] = pd.to_datetime(df['day'] - 1, unit='d', origin='2014-01-01')

print (df)
         day
0 2014-01-13
1 2014-01-27
2 2014-01-09
3 2014-01-04
4 2014-01-02
5 2014-01-03