gpt4 book ai didi

pandas - 如果 Pandas 在列表中,则按索引选择多行

转载 作者:行者123 更新时间:2023-12-03 21:18:28 31 4
gpt4 key购买 nike

类似于 Select multiple sections of rows by index in pandas ,我有大型数据框,并且有一些我有兴趣查看的索引。

我有:

import pandas as pd 
df = pd.DataFrame({'A':[0,1,2,3,4,5,6,7,8,9],'B':['a','b','c','d','e','f','g','h','i','j']},
index=range(10,20,))

我想看的索引很少, list=[12,15,10,14]
所以我最终得到:
    A  B
12 2 c
15 5 f
10 0 a
14 4 e

有没有命令让我可以去:
df.iloc[[index isin list]]

因为值列表是由较早的一段代码制成的。

我试过:
df.loc[[ix]]

哪里 ix=dm.iloc[250].sort_values()[:10].index并且是 Int64Index([250, 1109, 427, 513, 678, 18, 697, 1075, 533, 739], dtype='int64')
无济于事。

欢迎提出建议!

最佳答案

第一次更改 list到另一个名字,如 L ,因为python码字再通过 DataFrame.loc 选择按标签选择:

L=[12,15,10,14]
df = df.loc[L]
print (df)
A B
12 2 c
15 5 f
10 0 a
14 4 e

您的解决方案接近于通过位置选择 DataFrame.iloc 功能:
L1 = [2,5]
df = df.iloc[L1]

print (df)
A B
12 2 c
15 5 f

关于pandas - 如果 Pandas 在列表中,则按索引选择多行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57691019/

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