gpt4 book ai didi

python - 当行元素满足条件 Pandas 时查找列名

转载 作者:太空宇宙 更新时间:2023-11-04 07:16:48 27 4
gpt4 key购买 nike

这是一个基本问题。我有一个方形数组,其中包含行和列的总和。例如:

df = pd.DataFrame([[0,0,1,0], [0,0,1,0], [1,0,0,0], [0,1,0,0]], index = ["a","b","c","d"], columns = ["a","b","c","d"])
df["sumRows"] = df.sum(axis = 1)
df.loc["sumCols"] = df.sum()

返回:

In [100]: df
Out[100]:
a b c d sumRows
a 0 0 1 0 1
b 0 0 1 0 1
c 1 0 0 0 1
d 0 1 0 0 1
sumCols 1 1 2 0 4

我需要找到与 0 匹配的 sumCols 行的列标签。目前我正在这样做:

[df.loc["sumCols"] == 0].index

但是这返回了一个奇怪的索引类型对象。我想要的只是一个符合此条件的值列表,即:在本例中为 ['d']。

最佳答案

有两种方法(索引对象可以转换为像列表一样的可交互对象)。

对列执行此操作:

columns = df.columns[df.sum()==0]
columns = list(columns)

或者您可以旋转 Dataframe 并将列视为行:

list(df.T[df.T.sumCols == 0].index)

关于python - 当行元素满足条件 Pandas 时查找列名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41289074/

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