2
我做如下KeyError异常:楠字典
import numpy as np
from numpy import nan
df = pd.DataFrame({'a':[1, 2, 0, 1, np.nan, 2, 0]})
mapper = {2.0: 0.0, 1.0: 1.0 ,0.0: 2.0, nan : nan}
df['a'] = [ mapper[x] for x in df['a'] ]
和
KeyError: nan
我试图改变dtypes
df['a'] = df['a'].astype(object)
却又
KeyError: nan
有什么不对?
其实,巨蟒首先检查参考平等,当查找一个字典键:http://stackoverflow.com/questions/6441857/nans-as-key-in-dictionaries –
有趣的:''mapper [np.nan]'返回'南',但' [mapper [x] for df ['a']]'抛出'KeyError:nan'。 –
'df ['a'] [4]是np.nan'是'False':看起来大熊猫没有返回'np.nan',而只是一个'float'('nan')'。 –