gpt4 book ai didi

python - 在 Pandas DataFrame 中选择包含至少一个 True 值的列的最佳解决方案

转载 作者:行者123 更新时间:2023-12-04 01:08:55 26 4
gpt4 key购买 nike

In [4]: df = pd.DataFrame({'a': [True, False, True], 'b': [False, False, False], 
...: 'c': [False, False, False], 'd': [False, True, False],
...: 'e': [False, False, False]})


In [5]: df
Out[5]:
a b c d e
0 True False False False False
1 False False False True False
2 True False False False False

In [6]: df[df.any()[df.any()].index]
Out[6]:
a d
0 True False
1 False True
2 True False
[6] 下的代码做了我想要的。然而,我的问题是:有更好的解决方案吗?也就是说,更简洁和/或更优雅。

最佳答案

一种直接的方法是使用 df.loc使用 df.any() 生成的掩码作为输入:

df.loc[:, df.any()]

a d
0 True False
1 False True
2 True False

另一种选择是索引 df.columns ,
df[df.columns[df.any()]]
或者, df.keys() :
df[df.keys()[df.any()]]
       a      d
0 True False
1 False True
2 True False

关于python - 在 Pandas DataFrame 中选择包含至少一个 True 值的列的最佳解决方案,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65452608/

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