python - 如何使用python删除excel中的所有零值
问题描述
我想删除所有在 excel/csv 文件中包含零的单元格。它不应该像一个列明智的。因为如果我保持全零,它就会反映在我的数据透视表中。所以,我必须删除所有包含零的单元格。
以下是我输入的excel:
S.No Name Module Val1 Val2 Val3 Val4 Total
1 Name1 Module1 0.0004 1.874 0.9 0 0 2.7744
2 Name2 Module2 0.998 1.08 0.54 0.643 3.261
3 Name3 Module3 0 0 0 0.292 0.292
4 Name4 Module4 0.52 0 0.18 0 0.7
5 Name5 Module5 0 0 0.295 0 0.295
6 Name6 Module6 0 0.98 0 1.51 2.49
7 Name7 Module7 2.0876 0 0.8976 0 2.9852
8 Name8 Module8 0 1.0003 0 1.035 2.0353
9 Name9 Module9 0 0 0 2.09 2.09
10 Name10 Module10 0.52 0 0.18 0 0 0.7
11 Name11 Module11 0 1.874 0 0 1.874
12 Name12 Module12 0.292 0.998 0 0.2091 1.4991
预期输出:
删除所有零单元格值。
S.No Name Module Val1 Val2 Val3 Val4 Total
1 Name1 Module1 0.0004 1.874 0.9 2.7744
2 Name2 Module2 0.998 1.08 0.54 0.643 3.261
3 Name3 Module3 0.292 0.292
4 Name4 Module4 0.52 0.18 0.7
5 Name5 Module5 0.295 0.295
6 Name6 Module6 0 0.98 1.51 2.49
7 Name7 Module7 2.0876 0.8976 2.9852
8 Name8 Module8 1.0003 1.035 2.0353
9 Name9 Module9 2.09 2.09
10 Name10 Module10 0.52 0.18 0.7
11 Name11 Module11 0 1.874 1.874
12 Name12 Module12 0.292 0.998 0.2091 1.4991
解决方案
这是可能的,但得到混合值 - 带有空字符串的数字,因此数字操作失败:
df = df.replace(0, '')
所以更好的是用缺失值替换 - 所有值都是数字,因为NaN
是浮点值:
df = df.replace(0, np.nan)
推荐阅读
- powershell - 使用 PnP Powershell 将日历事件添加到模板文件中
- python - 如何将具有空数组的 numpy 数组列表转换为单个数组?
- batch-file - 批处理文件更改日志文件中的驱动器号字符串
- python - 为什么 matplotlib.pyplot 在使用 jupyter notebook 时可以正常工作,但在 CMD 中从 .py 文件运行时却无法正常工作?
- html - 如何使用 HTML 画布(和 vue.js)异步渲染图像?
- java - 从一维数组初始化二维数组
- python - 如何以 hh:mm:ss 格式将时间转储到 txt 文件
- scala - Scala 仅通过检查案例类的特定字段来添加要设置的元素
- java - 如何在 Java 中测试 Getter 和 Setter
- wso2 - 在 wso2 apim 中安装功能