无法转换Pandas数据帧时间戳

Eri*_*rin 7 python indexing timezone timestamp pandas

我很擅长与Pandas合作,并试图弄清楚为什么这个时间戳不会转换.例如,一个单独的时间戳是字符串'2010-10-06 16:38:02'.代码如下所示:

newdata = pd.DataFrame.from_records(data, columns = ["col1", "col2", "col3", "timestamp"], index = "timestamp")
newdata.index = newdata.index.tz_localize('UTC').tz_convert('US/Eastern')
Run Code Online (Sandbox Code Playgroud)

并得到此错误:

AttributeError: 'Index' object has no attribute 'tz_localize'
Run Code Online (Sandbox Code Playgroud)

有人在这里评论说tz_localize不是Index类型可用的方法,所以我尝试将其转换为列,但是这给出了错误

TypeError: index is not a valid DatetimeIndex or PeriodIndex
Run Code Online (Sandbox Code Playgroud)

然后我找到了这个网站,它说tz_localize 对索引起作用,无论如何.

如果有人能帮助我,我将不胜感激!我正在使用Pandas 0.15.2.我相信这段代码可能适用于早期版本的其他人,但我无法切换.

编辑:

搞砸了一下后我发现这不会引起任何错误,似乎在短期内做了我想做的事情: newdata.index=pd.DatetimeIndex(newdata.index).tz_localize('UTC').tz_convert('US/??Eastern')

Eri*_*rin 4

我被要求添加正式答案,而不仅仅是编辑我的问题,所以就在这里。请注意,它是基于上面的答案,但那个答案对我来说不太有效。

\n\n

newdata.index=pd.DatetimeIndex(newdata.index).tz_localize('UTC').tz_convert('US/\xe2\x80\x8c\xe2\x80\x8bEastern')

\n