【发布时间】:2023-01-04 18:57:16
【问题描述】:
我有一个 2 级索引 DataFrame,我只想为第二级保留 2 个顶行,并为其余行添加一行“其他”。这是我的数据框:
import pandas as pd
df = pd.DataFrame()
df["Idx1"] = ["A", "A", "A", "A", "B", "B", "B", "B"]
df["Idx2"] = ["X", "Y", "Z", "Q", "X", "Y", "Z", "Q"]
df["Values"] = [1,2,3,4, 1,2,3,4]
df = df.set_index(["Idx1", "Idx2"])
df
这就是我如何为第一级提取顶部 2 行:
res = df.groupby(level = 0).head(2)
res
但是我在添加“其他”列时遇到问题。我想要的输出是:
如何以最优雅的方式做到这一点?
【问题讨论】: