awesome way to select from pandas multi index and more
Warning! this repository is on early development stage!
pip install fastindex
from fastindex import fast_index
import pandas as pd
#expanding pandas with fastindex
fast_index(pd)
df = read_csv("data.csv")
df.set_index(["Country","City","District","first_name","Age","ID"],inplace=True)
df.sort_index(inplace=True)
- Regular Pandas:
df.loc[(slice(None),slice(None),slice(None),slice(None),24),:]
- With fastindex
df.fidx.slice(Age=24)
- Regular Pandas:
df.loc[("Spain",slice(None),slice(None),slice(None),slice(23,25)),:]
- With fastindex
df.fidx.slice(Age=slice(23,25),Country="Spain")
- Regular Pandas:
df.loc[("Spain",slice(None),slice(None),slice(None),slice(23,25)),["last_name"]]
- With fastindex
df.fidx.slice(Age=slice(23,25),Country="Spain",columns = ["last_name"])
slc = df.fidx.f_slice(Age=slice(23,25),Country="Spain")
df.loc[slc,"last_name"] = "Leonardo"