如何使用' NA'在熊猫?

时间:2017-02-14 10:57:56

标签: pandas

我在pandas中合并两个数据帧。当加入字段包含' NA'时,pandas会自动排除这些记录。如何保持记录具有值' NA'?

1 个答案:

答案 0 :(得分:0)

对我来说它很好用:

df1 = pd.DataFrame({'A':[np.nan,2,1],
                   'B':[5,7,8]})

print (df1)
     A  B
0  NaN  5
1  2.0  7
2  1.0  8

df2 = pd.DataFrame({'A':[np.nan,2,3],
                   'C':[4,5,6]})

print (df2)
     A  C
0  NaN  4
1  2.0  5
2  3.0  6

print (pd.merge(df1, df2, on=['A']))
     A  B  C
0  NaN  5  4
1  2.0  7  5

print (pd.__version__)
0.19.2

编辑:

似乎还有另一个问题 - 您的NA值已转换为NaN

您可以使用pandas.read_excel,可以使用参数NaNkeep_default_na定义将哪些值转换为na_values

df = pd.read_excel('test.xlsx',keep_default_na=False,na_values=['NaN'])
print (df)
      a   b
0   NaN  NA
1  20.0  40