如果所有值都是特定字符串,则删除pandas数据框中的列

无政府状态:

我有以下称为df的数据框。

有时看起来像这样(每个值都是唯一的)

   key   value1 value2 value3
0  key1  value  value  value
1  key2  value  value  value

有时的整个列value3都用破折号填充:'-'

   key   value1 value2 value3
0  key1  value  value  -
1  key2  value  value  -

我想找到一个命令,如果该列中的所有项目都破折号,它将删除列value3。

我尝试使用df['value3'].any(),并且返回'-'

是做我想要的正确方法吗?

if df['value3'].any() == '-':
    df = df.drop['value3'] 

或者,还有更好的方法?

耶斯雷尔:

比较不等于by DataFrame.ne,然后DataFrame.any在in中获得所有具有match by的列boolean indexing

print (df.loc[:, df.ne('-').any()])
    key value1 value2
0  key1  value  value
1  key2  value  value

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如果此列中的所有值都是特定值,则从数据框中删除该列

如果列在Pandas中包含任何字符串值,则从数据框中删除值

删除缺少值的数据框列中的字符串之后的所有内容

删除pandas数据框中具有混合数据类型的所有行,这些数据类型包含多列中的特定字符串

如果列的字符串值包含特定模式,如何从 Pandas 数据框中提取整行

如果在 Pandas 的所有列中都包含字符串,则样式化数据框

如果匹配的字符串超过某个值,则从 Pandas 数据框中删除行

如果列与特定字符串匹配,则在数据框中删除行

如何在pandas数据框中的特定列中搜索字符串值,如果存在,则给出数据框中存在的该行的输出?

python:删除pandas数据框中包含字符串的所有行

从 pandas 数据框列中删除子字符串

替换所有在熊猫数据框中不包含特定字符串的值

将具有特定单词的字符串值传输到数据框 pandas,python 中的其他列

从所有数据框列中删除子字符串

如何从数据框中的列末尾删除所有出现的子字符串?

如果列行中的值为零,则删除pandas数据框中所有列中的所有行

Pandas:在数据框中的所有列中搜索和替换字符串

删除数字值之前的字符串,但不能删除。如果pandas数据框列中包含邮政信箱地址或套件号?

如果包含特定子字符串,则替换基于 Pandas 数据帧中的列值

Python pandas 数据框:在数组列中,如果第一个项目包含特定字符串,则从数组中删除该项目

如何根据具有字符串值的列从数据框中删除重复项

Python:如果数据框中的多个列具有一个特定字符串以外的任何值,则设置新的列值

如何通过从具有给定字符串且值小于 X 的列中删除所有行来对数据框进行子集化?

如果有 2 个字符串,则从 Pandas 数据框中删除行

如果所有值都是特定值,则删除一列

如果所有值都等于字符串值,则删除列

python数据框:删除所有列的值都是某个值的行

如何从熊猫数据框中删除包含特定列中特定字符串的行?

删除熊猫数据框列中第一个出现空字符串之前的所有行