[英]Converting month number to datetime in pandas
如何使用 2010-01-01 之类的格式将 Pandas 中的月份数字(浮点数)转换为日期时间?
date
0 1.0
1 2.0
2 3.0
3 4.0
4 5.0
预期输出:
date
0 2010-01-01
1 2010-02-01
2 2010-03-01
3 2010-04-01
4 2010-05-01
附加年和月并转换为日期时间
pd.to_datetime('2010-' + df.date.astype(int).astype(str) + '-1', format = '%Y-%m')
0 2010-01-01
1 2010-02-01
2 2010-03-01
3 2010-04-01
4 2010-05-01
一个简单的解决方案是将year
和day
列添加到数据框中,然后调用pd.to_datetime(df)
:
df = df.assign(year=2010, day=1, month=lambda l: l.date.apply(np.int)).drop('date', axis=1)
df['date'] = pd.to_datetime(df)
df = df.drop(['year', 'month', 'day'], axis=1)
print(df)
date
0 2010-01-01
1 2010-02-01
2 2010-03-01
3 2010-04-01
4 2010-05-01
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.