如何从python 3中的字典值列表中删除nan值?

ukb*_*baz 1 python dictionary python-3.x pandas

嗨,我有一个字典列表,每个字典都有一个值列表。在该列表中有nan我希望删除的值。这是一个示例字典;

temp = {'A': ['field1', 'field2', 'field3', np.nan, np.nan], 'B': ['field1', 'field2', 'field3', 'field4', np.nan]}
Run Code Online (Sandbox Code Playgroud)

看起来像;

{'A': ['field1', 'field2', 'field3', nan, nan], 'B': ['field1', 'field2', 'field3', 'field4', nan]}
Run Code Online (Sandbox Code Playgroud)

我想要的输出是:

{'A': ['field1', 'field2', 'field3'], 'B': ['field1', 'field2', 'field3', 'field4']}
Run Code Online (Sandbox Code Playgroud)

我已经厌倦了以下没有成功;

res = {k:v for k,v in temp2.items() if v is not np.nan}
Run Code Online (Sandbox Code Playgroud)

任何帮助表示赞赏

mrC*_*ore 5

您正在将整个值(在您的情况下为 v)与 np.nan 进行比较,但只有字典值的单个元素是 np.nan。你要:

res = {k:[elem for elem in v if elem is not np.nan] for k,v in temp.items()}
Run Code Online (Sandbox Code Playgroud)