📜  Python| Pandas Series.dt.tz_convert(1)

📅  最后修改于: 2023-12-03 15:19:15.557000             🧑  作者: Mango

Python | Pandas Series.dt.tz_convert

Series.dt.tz_convert是Pandas库中Series对象的一个方法,用于将Series对象中的所有日期时间值从一种时区转换为另一种时区。该方法需要一个时区作为参数,将Series对象中所有的日期时间值都转换为该时区对应的时间值。

语法
Series.dt.tz_convert(tz)[source]
参数
  • tz:要转换到的时区字符串或pytz时区对象。
示例

以下示例演示了如何使用Series.dt.tz_convert将一个Series对象中的所有日期时间值从一个时区转换为另一个时区。

import pandas as pd

# 创建一个Series对象
dates = pd.Series(['2021-01-01 00:00:00', '2021-01-02 00:00:00', '2021-01-03 00:00:00'])
# 将Series对象中的日期时间值设置为美国纽约时区(东部标准时间)的时间值
dates = pd.to_datetime(dates, format='%Y-%m-%d %H:%M:%S').dt.tz_localize('US/Eastern')
# 将Series对象中的日期时间值从美国纽约时区转换为UTC时区
dates = dates.dt.tz_convert('UTC')

print(dates)

输出:

0   2021-01-01 05:00:00+00:00
1   2021-01-02 05:00:00+00:00
2   2021-01-03 05:00:00+00:00
dtype: datetime64[ns, UTC]

在上面的示例中,我们首先创建了一个Series对象,并将其设置为美国纽约时区的日期时间值。然后,我们使用Series.dt.tz_convert方法将日期时间值从美国纽约时区转换为UTC时区。最后,我们打印输出了转换后的结果。

注意事项
  • Series.dt.tz_convert方法只能将日期时间值从一种时区转换为另一种时区,并不会对Series对象本身进行修改。如果要修改Series对象本身的日期时间值,请使用Series.dt.tz_localize方法将日期时间值设置为所需的时区。

  • 如果要使用Series.dt.tz_convert方法,需要确保Series对象中的所有日期时间值都带有时区信息,否则会出现错误。如果日期时间值没有时区信息,可以使用Series.dt.tz_localize方法将其设置为所需的时区。