从python字典的列表值中删除“nan”

2024-06-16 12:58:17 发布

您现在位置:Python中文网/ 问答频道 /正文

我有本字典:

dict_new = 
{'extracted_layout': [nan, nan, nan, nan, nan, nan, nan, nan, nan, 'shyamanna layout', nan, nan, nan, nan, 'm t s layout', nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, 'green glen layout', nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, 'h s r layout', nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, 'vikas layout', 'annaiah reddy layout', nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, 'andhra muniyappa layout', nan, nan, nan, nan, nan, 'lake city layout', nan, 'h s r layout'}

它有一个键extracted_layout,它的值在一个用nan填充的列表中。我怎样才能摆脱他们?在


Tags: new字典greennandictlayoutlakeextracted
2条回答

如果nan是float nan,请使用^{}将其过滤掉:

>>> import math
>>> nan = float('nan')
>>> nan
nan
>>> math.isnan(nan)
True
>>> math.isnan(1)
False

^{pr2}$
list_dict = [{"year": 1916, "age": 10},
        {"year": 1826, "age": 'NaN'},
        {"year": 'NaN', "age": 7}]
for my_dict in list_dict:
    for k in my_dict:
        if isnan(float(my_dict[k])):
            my_dict[k] = 0

相关问题 更多 >