Skip to main content
`Ctrl`+`K`

# pandas.Series.tz_convert

Series.tz_convert(tz, axis=0, level=None, copy=None)

  Convert tz-aware axis to target time zone.

  Parameters:
    tz str or tzinfo object or None

      Target time zone. Passing `None` will convert to UTC and remove the timezone information.

    axis{0 or ‘index’, 1 or ‘columns’}, default 0

      The axis to convert

    level int, str, default None

      If axis is a MultiIndex, convert a specific level. Otherwise must be None.

    copy bool, default True

      Also make a copy of the underlying data.

      Note

      The copy keyword will change behavior in pandas 3.0. Copy-on-Write will be enabled by default, which means that all methods with a copy keyword will use a lazy copy mechanism to defer the copy and ignore the copy keyword. The copy keyword will be removed in a future version of pandas.

      You can already get the future behavior and improvements through enabling copy on write `pd.options.mode.copy_on_write = True`

  Returns:
    Series/DataFrame

      Object with time zone converted axis.

  Raises:
    TypeError

      If the axis is tz-naive.

  Examples

  Change to another time zone:

      >>> s = pd.Series(
      ...     [1],
      ...     index=pd.DatetimeIndex(['2018-09-15 01:30:00+02:00']),
      ... )
      >>> s.tz_convert('Asia/Shanghai')
      2018-09-15 07:30:00+08:00    1
      dtype: int64

  Pass None to convert to UTC and get a tz-naive index:

      >>> s = pd.Series([1],
      ...               index=pd.DatetimeIndex(['2018-09-15 01:30:00+02:00']))
      >>> s.tz_convert(None)
      2018-09-14 23:30:00    1
      dtype: int64