无法在python中声明时间对象

时间:2018-09-23 22:36:32

标签: python pandas datetime time

对此我有点陌生,我正在使用python中的日期时间数据。两个问题:

我有一个与事件关联的时间列,但是我很难使用datetime.time将其声明为时间。我有一个时间列,其格式如下:

Text.defaultProps = {};
Text.defaultProps.maxFontSizeMultiplier = 1.3;

TextInput.defaultProps = {};
TextInput.defaultProps.maxFontSizeMultiplier = 1.3;

并尝试将其声明为时间对象

0       11:17:43
1       06:00:00
2       06:30:35
3       02:00:00
4       23:00:00
5       13:20:49
6       19:30:00

但是收到此错误消息:

  

TypeError:无法将系列转换为类'int'

此外,我想使用这个时间对象,并使用scikit-learn分类或回归作为因变量。

如何声明它为时间对象,通过scikit-learn模型运行该对象以预测事件何时会发生会有任何问题吗?

谢谢!

2 个答案:

答案 0 :(得分:1)

您应该使用pandas.to_datetime,而不是标准库datetime

data['timeobject'] = pd.to_datetime(data['start_time'], format='%h:%m:%s')

答案 1 :(得分:1)

sourceSets { main { kotlin { srcDirs += "../project_a/" } } } 不能以矢量化方式工作。 Pandas顶级pd.to_timedelta可以使用,它接受多种格式,包括您提供的格式的字符串。给定具有列datetime.time的数据框:

'td'

作为结果序列的基础是通过df['td'] = pd.to_timedelta(df['td']) print(df) 0 11:17:43 1 06:00:00 2 06:30:35 3 02:00:00 4 23:00:00 5 13:20:49 6 19:30:00 Name: td, dtype: timedelta64[ns] 的整数数组。您应该期望它可以与scikit-learn框架一起很好地工作。