Return 数组中的最大值而不是数字值
Return maximum value from the array instead of not a number value
我有一个包含浮点值和 NaN 值的数组。我正在取这个数组的中位数。在当前情况下,中位数可能是某个值或 NaN。我的问题是,如果中位数是 NaN,它应该 return 数组中的最大值而不是 NaN。
数组示例,
x = np.array([NaN,NaN,0.1,0.002,0.14,NaN,NaN,NaN])
在这个数组中 np.median 是 NaN。当中位数为 NaN 时,它应该是数组中的 return 最大值,我的意思是它应该是数组中的 return (0.14) 值。
我怎样才能return这个值?
对于需要从中排除 NaN 以获得答案的任何操作,在创建仅包含相关值的第二个数组并使用该数组找到答案之后。
工作清单=[]
对于 x 中的项目
如果项目!= NaN:
workinglist.append(项目)
import numpy as np
from numpy import NaN
x = np.array([NaN,NaN,0.1,0.002,0.14,NaN,NaN,NaN])
def getMedian(arr):
med = np.median(arr)
if np.isnan(med):
return np.nanmax(arr)
else:
return med
print getMedian(x)
我有一个包含浮点值和 NaN 值的数组。我正在取这个数组的中位数。在当前情况下,中位数可能是某个值或 NaN。我的问题是,如果中位数是 NaN,它应该 return 数组中的最大值而不是 NaN。
数组示例,
x = np.array([NaN,NaN,0.1,0.002,0.14,NaN,NaN,NaN])
在这个数组中 np.median 是 NaN。当中位数为 NaN 时,它应该是数组中的 return 最大值,我的意思是它应该是数组中的 return (0.14) 值。
我怎样才能return这个值?
对于需要从中排除 NaN 以获得答案的任何操作,在创建仅包含相关值的第二个数组并使用该数组找到答案之后。
工作清单=[] 对于 x 中的项目 如果项目!= NaN: workinglist.append(项目)
import numpy as np
from numpy import NaN
x = np.array([NaN,NaN,0.1,0.002,0.14,NaN,NaN,NaN])
def getMedian(arr):
med = np.median(arr)
if np.isnan(med):
return np.nanmax(arr)
else:
return med
print getMedian(x)