你能将pandas的时间戳列提取为一个时间戳列表吗

2024-10-01 11:30:54 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个带有unix时间的pandas数据帧,它被转换为时间戳(一切正常)。然后,我想提取timestamp列(作为列表),并保留信息。但由于某些原因,在我执行此操作时,会将其转换回unix时间(带有更多尾随零…):

import pandas as pd

data = {'servertime':[1576887840000,1576887900000,1576887960000], 'val':[1,2,3]}

df = pd.DataFrame(data)

df['timestamp'] = df['servertime'].apply(lambda x: datetime.fromtimestamp(x/1000))

t = df['timestamp'].values.tolist()
t
Out[1]: [1576887840000000000, 1576887900000000000, 1576887960000000000]

有什么想法吗


Tags: 数据import信息pandasdf列表dataas
1条回答
网友
1楼 · 发布于 2024-10-01 11:30:54

可以使用^{}unit='ms'来提高性能,对于日期时间列表,可以使用^{}tolist()

df['timestamp'] = pd.to_datetime(df['servertime'], unit='ms')
print (df)
      servertime  val           timestamp
0  1576887840000    1 2019-12-21 00:24:00
1  1576887900000    2 2019-12-21 00:25:00
2  1576887960000    3 2019-12-21 00:26:00

t = df['timestamp'].dt.to_pydatetime().tolist()
print (t)
[datetime.datetime(2019, 12, 21, 0, 24), 
 datetime.datetime(2019, 12, 21, 0, 25), 
 datetime.datetime(2019, 12, 21, 0, 26)]

相关问题 更多 >