Skip to content

BUG: Copying PeriodIndex levels on MultiIndex loses weakrefs #33131

Closed
@topper-123

Description

@topper-123

As per comment by @jacobaustin123:

import pandas as pd
idx = pd.MultiIndex.from_arrays([pd.PeriodIndex([pd.Period("2019Q1"), pd.Period("2019Q2")], name='b')])
idx2 = pd.MultiIndex.from_arrays([idx._get_level_values(level) for level in range(idx.nlevels)])
all(x.is_monotonic for x in idx2.levels) # raises an error

Problem description

The weakly referenced PeriodIndex er dropped before intended, so the PeriodEngine gets a None instead of the PeriodIndex.

Expected Output

The above should return True.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions