如何将dataframe中的datetime.time列转换为字符串

时间:2016-06-29 11:17:09

标签: datetime pandas dataframe

我一直在努力转换大熊猫的两个专栏。 该框架包含许多列,以及包含日期的2列:' datelog'(是日期)和' Timeofday' (是时间)。 列datelog是一个字符串。 Timeofday列是datetime.time()格式。 日期框显示如下:

     datelog Timeofday
0  30-APR-15  14:15:43
1  30-APR-15  14:16:13
2  30-APR-15  14:16:43
3  30-APR-15  14:17:13
4  30-APR-15  14:17:43
5  30-APR-15  14:18:13
6  30-APR-15  14:18:43
7  30-APR-15  14:19:13
8  30-APR-15  14:19:43
9  30-APR-15  14:20:13

我的目标是连接这两列,将它们用作时间序列的索引。有人能指出我正确的方向吗?

2 个答案:

答案 0 :(得分:2)

如果需要DatetimeIndex,您可以使用to_datetimeto_timedelta。如果没有,请使用ysearka解决方案:

df.index = pd.to_datetime(df.datelog) + pd.to_timedelta(df.Timeofday)

print (df.index)
DatetimeIndex(['2015-04-30 14:15:43', '2015-04-30 14:16:13',
               '2015-04-30 14:16:43', '2015-04-30 14:17:13',
               '2015-04-30 14:17:43', '2015-04-30 14:18:13',
               '2015-04-30 14:18:43', '2015-04-30 14:19:13',
               '2015-04-30 14:19:43', '2015-04-30 14:20:13'],
              dtype='datetime64[ns]', freq=None)

答案 1 :(得分:1)

我认为您可以使用类似的东西来创建索引:

df.index = df['datelog'] + ' ' + df['Timeofday'].astype(str)