记录看到的问题及解决方法(亲测可用)
问题:为什么这不起作用吗?我试图从我的python列表/数组中删除nan值。
import math
import numpy as np
def clean_List_nan(List):
Myarray=np.array(List)
x = float('nan')
for elem in Myarray:
if math.isnan(x):
x = 0.0
return Myarray
oldlist =[nan, 19523.3211203121, 19738.4276377355, 19654.8478302742, 119.636737571360, 19712.4329437810, nan, 20052.3645613346, 19846.4815936009, 20041.8676619438, 19921.8126944154, nan, 20030.5073635719]
print(clean_List_nan(oldlist))
解决方案:
函数中的控制流没有意义-将变量x
设置为nan
,然后检查它是否确实n