首页 > 解决方案 > Pandas:删除 DataFrame 中值为零的行

问题描述

在此处输入图像描述

(图片是我的df的快照)

我想删除具有零值的行。我不想修改 DataFrame,而是创建一个反映 DataFrame 的分配,在“花费的金额”列中没有零值。

标签: pythonpython-3.xpandas

解决方案


此语法可用于根据给定条件查看(索引)DataFrame:

# View whole DataFrame where `amount_spent` is not zero.
df[df['amount_spent'] != 0]

这是关于索引的官方 pandas 文档。

发生了什么?该df['amount_spent'] != 0语句以布尔数组 ( ) 的形式返回一个“掩码” Series,然后将其传递到整个 DataFrame 的“行参数索引”(如果您愿意的话)df[<masked_array>]

这将创建 DataFrame 的“视图”,并且不会以任何方式更改它。


推荐阅读