我正在学习我必须将日期转换为unix时间戳的课程。
import pandas as pd
df = pd.read_csv('file.csv')
print type(df.iloc[-1].name)
class'pandas.tslib.Timestamp'
ts = df.iloc[-1].name.timestamp()
AttributeError:'Timestamp'对象没有属性'timestamp'
答案 0 :(得分:1)
你实际上并没有问一个问题(下次提示:更明确),但我假设你想要一个Pandas Timestamp对象的epoch / Unix时间戳。
如果您使用index.jsp
方法,则会以微秒(1 / 1,000,000秒)的形式返回时间戳:
pandas.tslib.Timestamp.value
如果您愿意,可以简单地除以1000得到毫秒或1000000得到整秒,例如:
In [1]: import pandas as pd
In [2]: date_example = pd.to_datetime("2016-06-21")
In [3]: type(date_example)
Out[3]: pandas.tslib.Timestamp
In [4]: date_example.value
Out[4]: 1466467200000000000
答案 1 :(得分:0)
IIUC,你可以这样做:
使用datetime dtype生成样本DF
In [65]: x = pd.DataFrame({'Date': pd.date_range('2016-01-01', freq='5D', periods=5)})
In [66]: x
Out[66]:
Date
0 2016-01-01
1 2016-01-06
2 2016-01-11
3 2016-01-16
4 2016-01-21
将datetime转换为UNIX时间戳
In [67]: x.Date.astype(np.int64) // 10**9
Out[67]:
0 1451606400
1 1452038400
2 1452470400
3 1452902400
4 1453334400
Name: Date, dtype: int64