【发布时间】:2018-02-23 18:58:56
【问题描述】:
如果一行在任何列中包含“9999-Don't Know”,我如何删除数据框中的所有行?
我已经能够找到解决方案,在整个数据框中根据值格式(字符串、数字等)删除行,或根据特定列中的值删除行,或从具有通过使用它们的名称来创建几列。
This 是我找到的最接近的东西,但这个解决方案对我不起作用,因为由于数量庞大(76 列以上),我无法输入所有列名。
下面是一个示例数据集
pd.DataFrame.from_items([('RespondentId', ['1ghi3g','335hduu','4vlsiu4','5nnvkkt','634deds','7kjng']), ('Satisfaction - Timing', ['9-Excellent','9-Excellent','9999-Don\'t Know','8-Very Good','1-Very Unsatisfied','9999-Don\'t Know']),('Response Speed - Time',['9999-Don\'t Know','9999-Don\'t Know','9-Excellent','9-Excellent','9-Excellent','9-Excellent'])])
删除包含 '9999-Don't Know' 的 4 行后,输出应如下所示,以便我可以使用清理后的数据编写一个新的 Excel 文件。
pd.DataFrame.from_items([('RespondentId', ['5nnvkkt','634deds']), ('Satisfaction - Timing', ['8-Very Good','1-Very Unsatisfied']),('Response Speed - Time',['9-Excellent','9-Excellent'])])
【问题讨论】: