np-nan
renardeinsideВ продолжение свистопляски с np.nan вот еще пример костыльности.
Допустим, вы хотите (по объективно разным причинам) иметь словарик вида:
dict_v = {np.nan:"MISS",1:"ONES",0:"ZEROS"}
Если вы обратитесь к нему по элементу, то получите желаемый (и ожидаемый результат):
in[1]: print(dict_v[np.nan])
out[1]: "MISS"
А теперь прикол:
ser_obj = pd.Series([np.nan,1,3])
ser_obj.apply(lambda x:dict_v[x])
Угадали что будет? Верно, KeyError - nan not in keys. Такой вот косяк. Естественно, все опять же обходится через костыльный pd.isnull(), но сам факт жутко бесячий.