在当前版本的Pandas(版本0.14)中,这可以正常工作:
In [132]: df[:5]['duration'] / np.timedelta64(1, 's')Out[132]: 0 12321 13902 14953 7974 1132Name: duration, dtype: float64
这是较旧版本的Pandas / NumPy的解决方法:
In [131]: df[:5]['duration'].values.view('<i8')/10**9Out[131]: array([1232, 1390, 1495, 797, 1132], dtype=int64)
timedelta64和datetime64数据在内部存储为8字节整数(dtype
'<i8')。因此,以上将timedelta64s视为8字节整数,然后进行整数除法将纳秒转换为秒。
请注意,您需要NumPy 1.7或更高版本才能使用datetime64 / timedelta64s。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)