gpt4 book ai didi

python - 使用 Limits 获取索引名称 pandas dataframe python

转载 作者:太空宇宙 更新时间:2023-11-03 14:39:22 25 4
gpt4 key购买 nike

我对数据集有上限和下限,我希望能够为超出此范围的任何项目提取索引(最好在列表中):

  X1 X2 X3 X4 X5 X6 X7 X8 X9
1 1 7 6 0 7 3 0 0 8
2 4 8 3 4 9 6 3 2 3
3 3 7 5 5 7 5 1 1 4
4 2 6 2 1 3 9 4 3 9
5 10 2 2 6 4 7 4 9 7

#Have another data frame with our limits
X1 X2 X3 X4 X5 X6 X7 X8 X9
1 1 7 3 4 7 3 0 0 3
2 4 8 9 10 9 6 3 2 8

所以我想要获得索引 1,4,5,因为在某些时候它们超出了我的限制。

我可以用这个:

llCheck = data < ll
hlCheck = data > hl

llCheck =
X1 X2 X3 X4 X5 X6 X7 X8 X9
False False False True False False False False False
False False False False False False False False False
False False False False False False False False False
False True True True True True True True True
True True True False True True True True False

并获取两个数据框,其中每个单元格包含真/假值,我认为这很有帮助,但如果行中的任何项目= true,则无法进一步获取索引。

有什么建议吗?

最佳答案

我认为您需要使用 DataFrame.any 过滤 index 值:

ll = 0
hl = 2

m = (df > ll) & (df < hl)
L = df.index[m.any(axis=1)].tolist()
print (L)
[1, 3, 4]

说明:

#get mask by limits with chaining both conditions
m = (df > ll) & (df < hl)
print (m)
X1 X2 X3 X4 X5 X6 X7 X8 X9
1 True False False False False False False False False
2 False False False False False False False False False
3 False False False False False False True True False
4 False False False True False False False False False
5 False False False False False False False False False

#check if at least one True per row
print (m.any(axis=1))
1 True
2 False
3 True
4 True
5 False
dtype: bool

#is possible filter rows
print (df[m.any(axis=1)])
X1 X2 X3 X4 X5 X6 X7 X8 X9
1 1 7 6 0 7 3 0 0 8
3 3 7 5 5 7 5 1 1 4
4 2 6 2 1 3 9 4 3 9

关于python - 使用 Limits 获取索引名称 pandas dataframe python,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46660002/

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