BUG: Fix bug in reindexing of period columns after unstack #61114
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
doc/source/whatsnew/v3.0.0.rst
file if fixing a bug or adding a new feature.When indexing a
Period
block, theBaseBlockManager.reindex_indexer
method thinksPeriod
blocks can't store 2D values and always returns the first element. This is because it uses a hardcoded list of types (which is missingPeriodDtype
) that are known to allow 2D values. The fix is to use theis_1d_only_ea_dtype
utility function which internally uses the_supports_2d
flag of the dtype.The bug only happens when indexing a 2D period block, which may be created after operations like transpose, pivot, unstack etc.