填充列表nan值

2024-06-25 22:58:50 发布

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

如何在列表中用0填充nan值。我可以为数据帧做,但不知道如何为列表做?

listname=listname.fillna(0)

这不管用。


Tags: 数据列表nanfillnalistname
3条回答

可以转换为熊猫系列并返回到列表

pd.Series(listname).fillna(0).tolist()

考虑一下列表listname

listname = [1, np.nan, 2, None, 3]

那么

pd.Series(listname, dtype=object).fillna(0).tolist()

[1, 0, 2, 0, 3]

您可以使用列表理解并使用math.isnan进行检查:

import math
listname = [0 if math.isnan(x) else x for x in listname]

但对于非浮点类型,如果有字符串、其他数值类型等,则无法使用。。在您的列表中,您可以使用str(x) != 'nan

listname = [0 if str(x)=='nan' else x for x in listname]
listname1=listname.fillna()

这将适用于所有int、string、float值

相关问题 更多 >