我有一个熊猫数据框,其中包含有关购买的一些信息。它包括“ 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
尝试使用pd.read_json
。问题可能是您的数据框,其中一行是json文件。
data = pd.read_json(r'purchases.json')
print(data.isnull().sum())
print(data.isna().sum().sum())