将函数应用于每一行python

时间:2016-12-08 01:23:09

标签: python pandas

我正在尝试在我的数据帧中将UTC时间转换为LocaleTime。我有一个dictionary,我存储了每个国家/地区代码需要换班的小时数。例如,如果我有df['CountryCode'][0]='AU'并且我有一个df['UTCTime'][0]=2016-08-12 08:01:00我希望得到df['LocaleTime'][0]=2016-08-12 19:01:00

df['UTCTime'][0]+datetime.timedelta(hours=dateDic[df['CountryCode'][0]])

我尝试用for loop来做,但由于我的行数超过100万,所以效率不高。我查看了apply函数,但我似乎无法将其用于从两个不同的列中获取输入。

任何人都可以帮助我吗?

1 个答案:

答案 0 :(得分:0)

如果没有一个更具体的例子,那就很困难但是试试这个:

pd.to_timedelta(df.CountryCode.map(dateDict), 'h') + df.UTCTime