Pandas,Timestamp在分配给新数据框

时间:2015-10-20 02:07:58

标签: python pandas timestamp timedelta

df1包含时间戳列:

df1.dtypes

...
Date datetime64[ns]
...

df2是一个新的数据框:

df2 = pd.DataFrame(columns=[...], index=[...])

我遍历行,在某些时候,从df1到df2分配一个时间戳:

for i, row in df1.iterrows():
    ...
    df2['Date'] = row.Date
    ...

但是时间戳在分配后结束了一个整数......

type(row.Date)
# <class 'pandas.tslib.Timestamp'>

type(df2['Date'][loc-I-assigned]) 
# <type 'long'> 

我该如何解决这个问题?

1 个答案:

答案 0 :(得分:1)

这是一个大熊猫的错误​​,似乎不会在版本1.x中修复,所以我们必须自己处理它。 Pandas Github bug ticket

但你可以自己转换它。 假设系列是pd.Series的对象,你可以 series['Date'] = row.Date series['Date'] = pd.to_datetime(series['Date']) 实际上,我认为您的代码中存在错误,df2['Date']是一个系列,但row.Date是一个值。