我有一个数据框,其中所有缺失值都用file = open('text_log.txt', 'r')
x = eval(''.join(file.read().splitlines()))
file.close()
表示。我需要每列?
的计数。
我尝试过的一种方法是:
?
返回:
mydata.replace('?','')
mydata.isnull().sum()
情况并非如此,因为CSV文件中有我从中获取数据的A1 0
A2 0
A3 0
A4 0
A5 0
A6 0
...
A16 0
dtype: int64
。
答案 0 :(得分:3)
将所有值与root
进行比较,并按?
中的sum
个值进行计数:
True
类似:
out = (mydata == '?').sum()
在解决方案中,首先应将out = mydata.eq('?').sum()
替换为?
,然后将其链接在一起:
NaN
也可以用参数out = mydata.replace('?',np.nan).isnull().sum()
将?
替换为read_csv
中的缺失值:
na_values='?'