我想删除 excel/csv 文件中所有包含零的单元格。它不应该像列一样。因为如果我保留所有零,它会反射(reflect)在我的数据透视表中。所以,我必须删除所有包含零的单元格。
下面是我输入的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)
关于python - 如何使用python删除excel中的所有零值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57322077/