我正在读取的.csv文件包含值为“ NA”的单元格。熊猫会自动将其转换为NaN,这是我不想要的。我知道该keep_default_na=False参数,但这会将列的dtype更改为object这意味着pd.get_dummies无法正常工作。
有什么方法可以防止熊猫在不更改dtype的情况下将“ NA”读取为NaN吗?
keep_default_na=False 为我工作
from io import StringIO
import pandas as pd
txt = """col1,col2
a,b
NA,US"""
print(pd.read_csv(StringIO(txt), keep_default_na=False))
col1 col2
0 a b
1 NA US
Run Code Online (Sandbox Code Playgroud)
没有它
print(pd.read_csv(StringIO(txt)))
col1 col2
0 a b
1 NaN US
Run Code Online (Sandbox Code Playgroud)
小智 0
您可以尝试先将列转换为 str:
for index, row in df.iterrows():
na_column = str(row['your_row'])
if na_column != 'nan':
# do something on column
Run Code Online (Sandbox Code Playgroud)