当前位置:   article > 正文

Python学习笔记——在Numpy的ndarray数组中选择所有非Nan值_numpy 取出不为nan的所有值

numpy 取出不为nan的所有值

Python学习笔记——在Numpy的ndarray数组中选择所有非Nan值

在ndarray中选择所有的nan值

选择所有的nan值可以使用isnan()函数:

In [217]: val 
Out[217]: array([ 0.,  8.,  3.,  4.,  7.,  0.,  3., nan,  2.,  0.])

In [218]: val[np.isnan(val)]
Out[218]: array([nan])
  • 1
  • 2
  • 3
  • 4
  • 5

在ndarray中选择所有的非nan值

选择所有非nan值的话,Numpy里没有提供直接的函数,用not(np.isnan())是不行的。有两种方法可以实现:

In [219]: val[np.logical_not(np.isnan(val))] 
Out[219]: array([0., 8., 3., 4., 7., 0., 3., 2., 0.])
  • 1
  • 2

不过还有更简单的办法,使用逐元素的非运算“~”,注意不是减号

In [220]: val[~np.isnan(val)]
Out[220]: array([0., 8., 3., 4., 7., 0., 3., 2., 0.])
  • 1
  • 2
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/我家小花儿/article/detail/598609
推荐阅读
相关标签
  

闽ICP备14008679号