将python时间段(Timedelta)转化为int或floa
2020-01-24 本文已影响0人
橘子kire
最近做的一个案例要将时间数据进行聚类分析,所以需要将Timedelta转化为int或float数值形式。
时间数据如下图所示:

方法(一):
通过pandas处理数据
import pandas as pd
dataSet['a'] =dataSet['t'].astype('timedelta64[D]').astype(float)
dataSet['a'] .head()
结果如下图

方法(二):
通过numpy处理数据
import numpy as np
dataSet['a']=(dataSet['t']/np.timedelta64(1, 'D')).astype(float)
dataSet['a'] .head()
结果如下图

总结:方法(一)pandas是直接提取days数值,如90 days 04:48:00提取数值90;方法(二)numpy是把整个时间进行换算,如90 days 04:48:00转化为90.200000。可以根据实际需求,选择不同的方法进行时间转换。