我想将下面的熊猫时间戳列转换为float32。
我已通过以下代码填充了Date
,Time
TimeStamp Date Time Day Time float32
04-01-2019 21:58 04-01-2019 21:58:33
04-01-2019 20:23 04-01-2019 20:23:06
31-12-2018 19:26 31-12-2018 19:26:11
对于Date
和Time
,我在pandas
中使用了以下代码
df['Date'] = pd.to_datetime(df['TimeStamp']).dt.date
df['Time'] = pd.to_datetime(df['TimeStamp']).dt.time
现在我想要的是如何填充Day
和Time
。
此外,如何将Date /或TimeStamp转换为float32。
答案 0 :(得分:2)
您可以使用:
df = pd.DataFrame({'TimeStamp':['04-01-2019 21:58', '04-01-2019 20:23', '31-12-2018 19:26'] })
df['TimeStamp'] = pd.to_datetime(df['TimeStamp'])
df['Date'] = df['TimeStamp'].dt.date
df['Time'] = df['TimeStamp'].dt.time
df['Day'] = df['TimeStamp'].dt.day
df['time_float'] = (df['TimeStamp'].astype('int64')//1e9).astype('float32')
df
TimeStamp Date Time Day time_float
0 2019-04-01 21:58:00 2019-04-01 21:58:00 1 1.554156e+09
1 2019-04-01 20:23:00 2019-04-01 20:23:00 1 1.554150e+09
2 2018-12-31 19:26:00 2018-12-31 19:26:00 31 1.546284e+09
答案 1 :(得分:0)
可能尝试一下吗?
import time
import numpy as np
t = time.time(Date) # or Time
results = np.float32(t)