WIP: add sort_levels to MultiIndex.from_product #14062
Closed
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.
Currently,
from_product
always sorts levels in the resulting MultiIndex. This means that the result does not necessarily have lexsorted labels/codes.This PR adds an option to not sort levels when calling
from_product
. Using this option yields a few benefits:The downside is that the result can be a little less intuitive, because levels and labels do not have the same sort order (#14015).
I'm suggesting this option because it would be useful for xarray (to fix pydata/xarray#980) -- otherwise we would simply put it in our own utility function.
I'm not certain that this is the best argument name, or that I've described it in a way that is clear if you don't understand MultiIndex internals.
git diff upstream/master | flake8 --diff