查找每行的最小值和最大值,不包括 NaN 值

Posted

技术标签:

【中文标题】查找每行的最小值和最大值,不包括 NaN 值【英文标题】:Finding minimum and maximum value for each row, excluding NaN values 【发布时间】:2015-10-01 23:36:36 【问题描述】:

我有一个代码,可以在一天中绘制 50 个不同高度的多个风速值。我正在尝试对其进行编程,让它在每个不同的高度为我提供最小值和最大值,以便我可以看到白天经历的最小和最大风。

我已经尝试过np.min(wind_speed, axis=0) 但这给了我 nan。我有一条线将风速的坏值读取为 nan。如何避免获取 nan 值并获取白天发生的实际最小值和最大值?

【问题讨论】:

使用 np.nanmin(wind_speed, axis=0) 这将忽略 NaN 数据是如何组织的? 【参考方案1】:

要忽略 NaN 值,请使用 nanmin 和类似的 nanmax

npnanmin(wind_speed, axis=0)
npnanmax(wind_speed, axis=0)

这将根据需要忽略NaN

例子:

In [93]:
wind_speed = np.array([234,np.NaN,343, np.NaN])
wind_speed

Out[93]:
array([ 234.,   nan,  343.,   nan])

In [94]:
print(np.nanmin(wind_speed, axis=0), np.nanmax(wind_speed, axis=0))
234.0 343.0

【讨论】:

以上是关于查找每行的最小值和最大值,不包括 NaN 值的主要内容,如果未能解决你的问题,请参考以下文章

显示不包括最小值和最大值的列数

使用递归js在树状对象中查找最小值和最大值

最小值和最大值的八度代码以及查找索引

在数组中查找最小值和最大值

查找金属纹理中的最小值和最大值

在 Vba 列的范围内查找最小值和最大值