我有一个DataFrame
interpolate(limit_direction='both')
我首先将所有NaN都设为零,然后使用(df == 0).sum().sum()
将所有的零更改为基于非零的数字。在进行此操作之前,我想计算整个数据帧中有多少个零,以检查其中有多少数据损坏。
我似乎找不到它。我相信它是按照将其转换为布尔值并以这种方式计数的方式进行的,但到目前为止仍未成功。
编辑:Error I see when inserting data:
Error: database is locked
非常感谢
答案 0 :(得分:0)
假设熊猫DF。
过滤列可能会有用。
df.Open[df.Open==0].count()
如果要在数据框中计数每0个数字,则可以在列上循环。
import pandas as pd
dct = {'Date':[20190101 ,20190102 ,20190103 ,20190104 ],
'Open':[23,0,19,21],
'Close':[0,0,18,19]}
df = pd.DataFrame(dct)
df.Open[df.Open==0].count()
在列上循环
num = 0
for i in df.columns:
num += df[i][df[i]==0].count()
num