DataFrame.tz_convert(tz, axis=0, level=None, copy=True) [source]
将tz-aware axis转换为目标时区。
参数: | tz : 移动的周期数,可以是正的,也可以是负的。 axis :要转换的轴 level : 如果axis是多索引,则转换特定级别。否则,一定为 copy : 是否要复制基础数据。 |
返回值: | {klass} 具有时区转换轴的对象。 |
Raises: | TypeError 如果坐标轴是 tz-naive. |
例子,
使用DataFrame.tz_convert()
函数将给定数据帧的时区转换为'Europe/Berlin'
。
>>> import pandas as pd
>>> df = pd.DataFrame({'Weight':[45, 88, 56, 15, 71],
'Name':['Sam', 'Andrea', 'Alex', 'Robin', 'Kia'],
'Age':[14, 25, 55, 8, 21]})
>>> index_ = pd.date_range('2010-10-09 08:45', periods = 5, freq ='H', tz = 'US/Central')
>>> df.index = index_
# 让我们看看现在的时区
# 给定的数据格式
>>> print(df.index)
DatetimeIndex(['2010-10-09 08:45:00-05:00', '2010-10-09 09:45:00-05:00',
'2010-10-09 10:45:00-05:00', '2010-10-09 11:45:00-05:00',
'2010-10-09 12:45:00-05:00'],
dtype='datetime64[ns, US/Central]', freq='H')
#属性的时区转换
# dataframe到 “欧洲/柏林”
>>> df = df.tz_convert(tz = 'Europe/Berlin')
#让我们找出当前的时区
#指定dataframe
>>> print(df.index)
DatetimeIndex(['2010-10-09 15:45:00+02:00', '2010-10-09 16:45:00+02:00',
'2010-10-09 17:45:00+02:00', '2010-10-09 18:45:00+02:00',
'2010-10-09 19:45:00+02:00'],
dtype='datetime64[ns, Europe/Berlin]', freq='H')