python - 如何处理 Pandas 中等于 "NA"的列?

标签 python pandas

<分区>

我知道这听起来很愚蠢,但我不知道如何处理电子表格中等于“NA”(在我的例子中,它是“北美”的缩写)的数据。当我执行 Pandas“read_excel”时,数据以“NaN”而不是“NA”的形式引入。

“NA”是否也像 NaN 一样被视为“非数字”?

输入的 Excel 工作表单元格包含 NA。数据框包含“NaN”。

有什么办法可以避免这种情况?

最佳答案

解决方案

您可以通过在 pandas.read_excel() 中使用 keep_defaul_na=False关闭 na-values 的自动检测如下。

I am using the demo test.xlsx file that I created in the Dummy Data section.

pd.read_excel('test.xlsx', keep_default_na=False)

## Output
#   Region    Country
# 0     NA     Canada
# 1     NA        USA
# 2     SA     Brazil
# 3     EU     Sweden
# 4     AU  Australia

虚拟数据

import pandas as pd

# Create a dummy dataframe for demo purpose
df = pd.DataFrame({'Region': ['NA', 'NA', 'SA', 'EU', 'AU'], 
                   'Country': ['Canada', 'USA', 'Brazil', 'Sweden', 'Australia']})

# Create an excel file with this data
df.to_excel('test.xlsx', index=False)

# Show dataframe
print(df)

输出

  Region    Country
0     NA     Canada
1     NA        USA
2     SA     Brazil
3     EU     Sweden
4     AU  Australia

关于python - 如何处理 Pandas 中等于 "NA"的列?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62842433/

相关文章:

python - 在python中使用计算函数自动填充

python - 如何使用 pandas 中的 groupby 保留在另一列上具有最高值的列的值

python-3.x - 值错误: could not convert string to float: left_column_pixel

python - 根据具有相同日期的多行添加新列

java - 为什么我们需要安装一个工具包(JDK)才能开始Java编程

管道到文件时 python subprocess.call 错误

python - 处理协议(protocol)、延迟和命令行输入

python - 使用逻辑填充缺失数据 Pandas

python - 在 matplotlib 中使用动画的颜色图问题

python - 在 Python 中将长方法链分成多行