我开始学习熊猫。我在 SO 中看到了很多问题,人们询问如果列与特定值匹配如何删除行。
就我而言,情况恰恰相反。想象一下有这个数据框:
您想知道的是,如果任何列在其任何行中具有值 salty
,则应删除该列,结果为:
我尝试过与此有几个相似之处:
if df.loc[df['A'] == 'salty']:
df.drop(df.columns[0], axis=1, inplace=True)
但是我很迷茫,找不到关于如何根据该列的行值删除列的文档。该代码是查找特定列和始终删除第一列的混合(因为我的想法是在 for
循环中的所有列中搜索该列中一行的值。
原文由 M.K 发布,翻译遵循 CC BY-SA 4.0 许可协议
对您的值进行比较,然后使用
DataFrame.any
获取要索引的掩码:如果你坚持使用
drop
,这就是你需要做的。传递索引列表: