Python:打开CSV并将第一列从Unix时间戳转换为人类日期

时间:2016-11-15 10:55:54

标签: python csv unix

我是一名新手并开始使用python进行编程。 我有一个包含两列的CSV文件。第一个是Unix时间戳。我想用熊猫把它转换成人类约会。 我到现在所拥有的:

import _csv
import pandas as pd

out=open("data_magnetic.csv","rb")
data=_csv.reader(out)

data=[row for row in data]
out.close()

a = pd.DataFrame(data)
print(a)

此外,我在stackoverflow中找到了将单个值从Unix转换为人类日期的代码:

import time

print(
time.strftime("%Y-%m-%d %H:%M:%S", time.localtime(int("1475761269977") / 1000))
)

如何将其组合并运行我的CSV文件中的列?

感谢您的帮助。

1 个答案:

答案 0 :(得分:0)

由于csv中有两列,您可以在数据行的第一个索引上应用转换函数。

import time
import _csv
import pandas as pd

def convert_from_unix_stamp(raw):
   return time.strftime("%Y-%m-%d %H:%M:%S", time.localtime(int(raw) / 1000))

out=open("data_magnetic.csv","rb")
data=_csv.reader(out)

data=[(convert_from_unix_stamp(row[0]),row[1]) for row in data]
out.close()

a = pd.DataFrame(data)
print(a)