您好我有一个词典列表,每个词典都有一个值列表。在该列表中,我希望删除nan
个值。这是一个示例字典;
temp = {'A': ['field1', 'field2', 'field3', np.nan, np.nan], 'B': ['field1', 'field2', 'field3', 'field4', np.nan]}
看起来像;
{'A': ['field1', 'field2', 'field3', nan, nan], 'B': ['field1', 'field2', 'field3', 'field4', nan]}
我希望输出是:
{'A': ['field1', 'field2', 'field3'], 'B': ['field1', 'field2', 'field3', 'field4']}
我已经厌倦了以下但没有成功;
res = {k:v for k,v in temp2.items() if v is not np.nan}
感谢任何帮助
答案 0 :(得分:4)
您正在将整个值(在您的情况下为v)与np.nan进行比较,但只有字典值的单个元素是np.nan。 你想要:
res = {k:[elem for elem in v if elem is not np.nan] for k,v in temp.items()}