Skip to content

BUG: Series.dt ops reset name #10712

Closed
Closed
@sinhrks

Description

@sinhrks

DatetimeIndex.tz_localize preserves name.

import pandas as pd
idx = pd.date_range('2011-01-01', periods=5, freq='M', name='x')
idx
# DatetimeIndex(['2011-01-31', '2011-02-28', '2011-03-31', '2011-04-30', '2011-05-31'],
#               dtype='datetime64[ns]', name=u'x', freq='M', tz=None)
idx.tz_localize('US/Eastern')
# DatetimeIndex(['2011-01-31 00:00:00-05:00', '2011-02-28 00:00:00-05:00',
#                '2011-03-31 00:00:00-04:00', '2011-04-30 00:00:00-04:00',
#                '2011-05-31 00:00:00-04:00'],
#               dtype='datetime64[ns]', name=u'x', freq='M', tz='US/Eastern')

But Series doesn't. I don't check all methods which can return Series yet.

s = pd.Series(idx)
s
#0   2011-01-31
#1   2011-02-28
#2   2011-03-31
#3   2011-04-30
#4   2011-05-31
# Name: x, dtype: datetime64[ns]

# NG, name is reset
s2 = s.dt.tz_localize('US/Eastern')
s2
#0    2011-01-31 00:00:00-05:00
#1    2011-02-28 00:00:00-05:00
#2    2011-03-31 00:00:00-04:00
#3    2011-04-30 00:00:00-04:00
#4    2011-05-31 00:00:00-04:00
# dtype: object

# NG, name is reset
s2.name = 'x'
s2.dt.tz_convert('US/Pacific')
#0    2011-01-30 21:00:00-08:00
#1    2011-02-27 21:00:00-08:00
#2    2011-03-30 21:00:00-07:00
#3    2011-04-29 21:00:00-07:00
#4    2011-05-30 21:00:00-07:00
# dtype: object

# NG, name is reset
s.dt.normalize()
#0   2011-01-31
#1   2011-02-28
#2   2011-03-31
#3   2011-04-30
#4   2011-05-31
# dtype: datetime64[ns]

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions