加快时间戳操作

Ame*_*ina 4 python pandas

以下转换(ms - > datetime - > conver timezone)需要很长时间才能运行(4分钟),可能是因为我正在使用大型数据帧:

for column in ['A', 'B', 'C', 'D', 'E']:
    # Data comes in unix time (ms) so I need to convert it to datetime
    df[column] = pd.to_datetime(df[column], unit='ms')

    # Get times in EST
    df[column] = df[column].apply(lambda x: x.tz_localize('UTC').tz_convert('US/Eastern'))
Run Code Online (Sandbox Code Playgroud)

有没有办法加快速度?我是否已经以最有效的方式使用Pandas数据结构和方法?

And*_*den 7

这些都可以作为DatetimeIndex方法,这将是快:

df[column] = pd.DatetimeIndex(df[column]).tz_localize('UTC').tz_convert('US/Eastern')
Run Code Online (Sandbox Code Playgroud)

注意:在0.15.0中,您可以访问这些作为Series dt访问器:

df[column] = df[column].dt.tz_localize('UTC').tz_convert('US/Eastern')
Run Code Online (Sandbox Code Playgroud)