gpt4 book ai didi

pandas - 按索引号排序的 MultiIndex DataFrame 索引

转载 作者:行者123 更新时间:2023-12-01 23:30:59 24 4
gpt4 key购买 nike

我有一个 MultiIndex DataFrame 如下:

header = pd.MultiIndex.from_product([['#'],
['TE', 'SS', 'M', 'MR']])
dat = ([[100, 20, 21, 35], [100, 12, 5, 15]])
df = pd.DataFrame(dat, index=['JC', 'TTo'], columns=header)
df = df.stack()
df = df.sort_values('#', ascending=False).sort_index(level=0, sort_remaining=False)

enter image description here

我想通过索引号而不是名称获取下一行索引,即每个 0 级索引的第三行:

JC   M   21
TTo SS 12

在我尝试过的所有方法中,最接近我正在寻找的是:

df.loc[pd.IndexSlice[:, df.index[2]], '#']

但这也不能按预期工作。

最佳答案

您可以执行以下操作:

df["idx"] = df[df.groupby(level=0).cumcount() == 2]
df.loc[df.idx == 2]

Quang Hoang 的一线解决方案:

df[df.groupby(level=0).cumcount() == 2]

关于pandas - 按索引号排序的 MultiIndex DataFrame 索引,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66262679/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com