Python 熊猫:在列中计算空值
我有一个熊猫数据框,其中包含一些关于购买的信息。它包括“purchaseID”、“purchaseDate”和“purchaseAmount”等列。我想知道每列中缺失值的数量,不同的列包含不同类型的数据类型,如字符串、数字、布尔值等。我尝试了以下方法:Python 熊猫:在列中计算空值,python,pandas,dataframe,Python,Pandas,Dataframe,我有一个熊猫数据框,其中包含一些关于购买的信息。它包括“purchaseID”、“purchaseDate”和“purchaseAmount”等列。我想知道每列中缺失值的数量,不同的列包含不同类型的数据类型,如字符串、数字、布尔值等。我尝试了以下方法: import json import pandas # the variable 'data' is my pandas data frame which was read from a json with open('purchases.js
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())
for col in data.columns:
print((data[col].values == '').sum())
然而,isnull和isna都显示在任何列中都没有null值,事实并非如此
当我尝试这样的事情时:
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())
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\u json
。问题可能是您的数据帧中有一行是json文件
data = pd.read_json(r'purchases.json')
print(data.isnull().sum())
print(data.isna().sum().sum())
您需要将空格转换为true
NaN
或null值,请尝试df.replace(“”,np.NaN)
然后尝试上面的代码。我以前尝试过,但它仍然为所有列显示0个空值。您需要显示数据样本,这对我来说很有用,但是没有一个示例数据集,这里的任何人都无法重现您的错误。@DataKnool刚刚在原始文章中添加了一个示例。谢谢df.replace(“”,np.nan)
对我有效,也可以使用上面的代码df.isnull().sum()
对我有效,并显示3个缺少的值。