Python 如何将字符串格式的时间转换为熊猫格式的时间?

Python 如何将字符串格式的时间转换为熊猫格式的时间?,python,pandas,random-forest,prediction,Python,Pandas,Random Forest,Prediction,有一个数据帧,其列time为string,而date为int从1到140 时间是一个字符串: 0 00:05:24 1 00:05:43 2 00:06:34 3 00:06:50 4 00:06:55 我想创建一个随机林的模型来预测类h,但是我们可以看到日期和时间列没有用处,我不能在随机林中使用它们。我需要以某种方式将这两列合并到一个新的列中,以使它们在预测中有用。如果您想将所有内容都保留为数字特征,那么无论日

有一个数据帧,其列
time
string
,而
date
int
从1到140

时间是一个字符串:

0         00:05:24
1         00:05:43
2         00:06:34
3         00:06:50
4         00:06:55

我想创建一个
随机林
的模型来预测类
h
,但是我们可以看到日期和时间列没有用处,我不能在
随机林
中使用它们。我需要以某种方式将这两列合并到一个新的列中,以使它们在预测中有用。

如果您想将所有内容都保留为数字特征,那么无论日期代表什么(我假设您是相对于某个零点来计算天数?),您都可以将时间添加为一天的一小部分(以秒为单位的时间/一天中的秒数)

虚拟数据:

>>> df
13:    date      time
0    23  00:05:43
1    45  00:06:34
2    67  00:06:50
3    89  00:06:55
计算时间分数,将其添加到日期以生成“时间”:

>>> df['seconds'] = df.time.apply(pd.to_timedelta).apply(lambda x: x.total_seconds())
>>> df['of_day'] = df.seconds / (24*60*60)
>>> df['datetime_number'] = df.date + df.of_day
>>> df
17:    date      time  seconds    of_day  datetime_number
0    23  00:05:43    343.0  0.003970        23.003970
1    45  00:06:34    394.0  0.004560        45.004560
2    67  00:06:50    410.0  0.004745        67.004745
3    89  00:06:55    415.0  0.004803        89.004803

date
在这里代表什么?date的意义是什么?
date
是一个从1到140的
int
数字,表示
a
的日期(是唯一id)发生在
时间
日期
日期
中,需要计算一些时间间隔。请说明“日期”和实际日期之间的关系。你是怎么得到这个值的?因为应该有一些映射。。