Skip to content

coroa/pandas-indexing

pandas-indexing helper

CI Codecov Read the Docs PyPI Conda

Summary

pandas-indexing is a helpers package to make interacting with pandas multi-indices less painful. It contains functions, that

  • filter easily into multi indices: isin, ismatch
  • add or update levels in a multiindex: assignlevel
  • select one or multiple specific levels: projectlevel

Usage

Given you have a time-series like dataframe with several multi index levels, like model, scenario, variable: then you can select a subset with:

df.loc[isin(model="m1", scenario=["s1", "s2"])]

or with shell like glob-patterns:

df.loc[
    ismatch(
        model="REMIND*", variable="Emissions|**", unit=["Mt CO2/yr", "kt N2O/yr"]
    )
]

You can overwrite index levels:

assignlevel(df, selected=1)

or project your data to only a few desired index levels:

projectlevel(df, ["model", "scenario"])

All commands are described in detail in the API reference in documentation and are togehter with introductions for installing and using this package, but they are mostly bare-bones atm.

Issues and Discussions

As usual for any GitHub-based project, raise an issue if you find any bug or want to suggest an improvement, or open a discussion if you want to discuss.

About

Helpers to facilitate working with pandas indices in particular multiindices

Resources

License

Code of conduct

Contributing

Stars

Watchers

Forks

Packages

No packages published

Contributors 2

  •  
  •  

Languages