问题描述
我有一个pandas数组,其中的列包含unix时间戳记时间,但我认为它以毫秒为单位,因为每次结尾都为3个额外的0。例如,第一个数据点是1546300800000,当时它应该只是1546300800。我需要将此列转换为可读时间,所以现在我有了:
df = pd.read_csv('data.csv')
df['Time] = pd.to_datetime(df['Time'])
df.to_csv('data.csv',index=False)
不是给我正确的时间,而是给了我1970年的时间。例如1546300800000给我1970-01-01 00:25:46.301100,应该是2019-01-01 00:00:00。它针对超过2万行的列中的每个时间戳执行此操作
解决方法
数据;
df=pd.DataFrame({'UNIX':['1349720105','1546300800']})
转化
df['UNIX']=pd.to_datetime(df['UNIX'],unit='s')