gpt4 book ai didi

python - pandas 重新定义 isnull 以忽略 'NA'

转载 作者:太空宇宙 更新时间:2023-11-04 00:40:44 25 4
gpt4 key购买 nike

作为数据分析练习的一部分,我正在将 Excel 工作表读入 Pandas 数据帧。

df = pd.ExcelFile('file.xlsx').parse(0)
nullcounts = df.isnull().sum().to_frame('null_records')

为我的数据框中的每个系列生成一个带有空计数的漂亮框架。但是如果字符串 'NA' 出现在一行数据中,我不希望 isnull 操作返回 True

有没有一种简单的方法可以做到这一点,而无需为特定列/数据框硬编码规则?

编辑:我的源数据中的 NA 似乎在读入 pandas 时被忽略了,因为当我加载数据并进行视觉比较时,我看到 NaN 在 excel 中有 不适用

最佳答案

如果使用read_excel可以使用参数 keep_default_nana_values 定义将哪些值转换为 NaN:

df = pd.read_excel('file.xlsx')
print (df)
a b
0 NaN NaN
1 3.0 6.0

nullcounts = df.isnull().sum().to_frame('null_records')
print (nullcounts)
null_records
a 1
b 1

df = pd.read_excel('file.xlsx',keep_default_na=False,na_values=['NaN'])
print (df)
a b
0 NA NaN
1 3 6.0

nullcounts = df.isnull().sum().to_frame('null_records')
print (nullcounts)
null_records
a 0
b 1

关于python - pandas 重新定义 isnull 以忽略 'NA',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42001610/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com