我有一个数据帧,从CSV读取,例如(乘以HH:MM:SS):
pta ptd tpl_num
4 05:17 05:18 0
6 05:29:30 05:30 1
9 05:42 05:44:30 2
11 05:53 05:54 3
12 06:03 06:05:30 4
17 06:24:30 NaN 5
dtypes
:
pta object
ptd object
tpl_num int64
我正在尝试以int
的形式获取pta
和ptd
列,格式如下:
pta ptd tpl_num
4 51700 51800 0
6 52930 53000 1
9 54200 54430 2
11 55300 55400 3
12 60300 60530 4
17 62430 NaN 5
看起来很简单-填充尾随的零,并将其转换为int。但我找不到一种方法。我已经转换为字符串,填充了零,去掉了冒号,但由于无法识别NaN
单元格,因此无法转换为int。如果所有单元格中都没有:SS
,我就无法转换为datetime
。不知道该怎么办
我假设您希望最终获得
datetime
对象您可以创建一个helper函数来转换原始字符串,如:
输出:
IIUC,你可以使用
以下是一个转换为十进制分钟的调整值,应适用于培训:
输出:
关于您的评论,您只想将scikit.learn转换为整数,您必须转换为一组通用单位。不能只将转换后的整数猛击在一起。如果您这样做,您已经将连续变量更改为有序变量,因为您已经破坏了线性。除非您想要有序变量,否则不要这样做。例如,如果我们看一个小时内10分钟的增量,你会得到如下结果:
相关问题 更多 >
编程相关推荐