gpt4 book ai didi

python - pandas 多索引根据第二列选择/删除行

转载 作者:行者123 更新时间:2023-12-02 04:23:16 24 4
gpt4 key购买 nike

question 复制示例,考虑以下数据框:

mux = pd.MultiIndex.from_arrays([
list('aaaabbbbbccddddd'),
list('tuvwtuvwtuvwtuvw')
], names=['one', 'two'])

df = pd.DataFrame({'col': np.arange(len(mux))}, mux)

col
one two
a t 0
u 1
v 2
w 3
b t 4
u 5
v 6
w 7
t 8
c u 9
v 10
d w 11
t 12
u 13
v 14
w 15

假设我只想保留多索引第二级的两行。即我的最终数据框如下所示:

         col
one two
a t 0
u 1
b t 4
u 5
c u 9
v 10
d w 11
t 12

实现上述目标的最佳方法是什么?理想情况下,我想做这样的事情(显然是错误的语法)

df.iloc[(:, :2)]

即所有值来自级别 0,前 2 个值来自级别 1。

最佳答案

head(2) 与 groupby 结合使用

df.groupby('one').head(2)

Out[246]:
col
one two
a t 0
u 1
b t 4
u 5
c u 9
v 10
d w 11
t 12

关于python - pandas 多索引根据第二列选择/删除行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59149754/

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