Pandas:计算列中的空值

问题描述 投票:0回答:1

我有一个熊猫数据框,其中包含有关购买的一些信息。它包括“ purchaseID”,“ purchaseDate”和“ purchaseAmount”之类的列。我想知道每列中缺少值的数量,并且不同的列包含不同类型的数据类型,例如字符串,数字,布尔值等。我尝试了类似的方法:

import json
import pandas

# the variable 'data' is my pandas data frame which was read from a json
with open('purchases.json') as f:
    data = pd.DataFrame(json.loads(line) for line in f)

print(data.isnull().sum())
print(data.isna().sum())

但是,isnull和isna都显示在任何列中都没有null值,事实并非如此。

[当我尝试这样的事情时:

for col in data.columns: 
    print((data[col].values == '').sum())

它适用于某些列,但不适用于包含数字或布尔数据的列。我有办法在所有列中找到空值吗?

谢谢!

使用几行数据打印的示例打印输出

purchaseID purchaseDate purchaseAmount merchantName
1234       2019-01-01   500.0          Walmart
2345       2019-01-03
           2019-01-02   25.1           BP 
python pandas dataframe
1个回答
0
投票

尝试使用pd.read_json。问题可能是您的数据框,其中一行是json文件。

data = pd.read_json(r'purchases.json')
print(data.isnull().sum())
print(data.isna().sum().sum())
© www.soinside.com 2019 - 2024. All rights reserved.