Python屏蔽的数组使用np.array产生NaN

哈特爵士

我试图选择一个更大的网格的子集来执行有限元分析,以在两个数组之间进行迭代。有遮罩的数组和无遮罩的数组,但我遇到了使用np.arrays时从遮罩出现NaN的问题。我最初在这里使用掩码是为了避免出现NaN问题,包括NaN == NaN(False)等...但是当与np.arrays一起使用时,掩码本身似乎正在创建NaN!

协调数组进行迭代:

array = np.array(list(np.arange(5))*5).reshape(5,5)
big_array =  np.array([array,array,array])

在坐标数组上应用蒙版:

mask1 = np.ma.masked_array(big_array, mask = (big_array>2))
mask2 = np.ma.masked_array(big_array, mask = (big_array>3))

遍历坐标数组以进行蒙版与非蒙版比较:

for i in range(5):
    for j in range(5):
            array_group = np.array([ big_array[0,i,j], big_array[1,i,j] ]) 
            array_group2 = np.array([ mask1[0,i,j], mask2[1,i,j] ]) 
            print array_group  

^^没有来自array_group的NaN,但是.. ^^^

        print array_group2  

NaN在此处显示为被屏蔽的array_group2

IMCoins

在您的数据中,您的mask1输出:

[[[0 1 2 -- --]
  [0 1 2 -- --]
  [0 1 2 -- --]
  [0 1 2 -- --]
  [0 1 2 -- --]]

 [[0 1 2 -- --]
  [0 1 2 -- --]
  [0 1 2 -- --]
  [0 1 2 -- --]
  [0 1 2 -- --]]

 [[0 1 2 -- --]
  [0 1 2 -- --]
  [0 1 2 -- --]
  [0 1 2 -- --]
  [0 1 2 -- --]]]

小破折号是导致nan值出现的掩码数据至于如何解决这个问题……我相信这取决于您要如何处理这些数据:将这些破折号替换为0,错,删除它们……等等。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

Python Reindex产生Nan

如何使用np.isnan从Python中的数组中删除带有nan的行?

使用 python 屏蔽 mxn 数组

排序np数组与python列表会产生不同的结果

在 numpy 数组中查找最近的值会产生 nan 输出

b.sum()产生0,而b.rolling(2).sum()产生nan,其中b = pd.Series([np.nan,np.nan])

Python:从字符串数组中删除 np nan 值

使用+ =进行赋值会在javascript中产生NaN

我可以使用np.resize用np.nan填充数组吗

Python 在 nan-list 中查找 nan 的索引仅有时会产生错误?

使用 numpy 屏蔽数组

为什么parseInt用Array#map产生NaN?

使用np.nan替换数组的所有元素时出现问题

php in_array()以数组作为指针产生意外结果

'array [i] = undefined'会产生稀疏数组吗?

从Python中的多个xarray.Datasets中屏蔽NaN

是否有一个产生VALID json并处理NaN的python解码器

在多列上使用Pandas df.where会产生意外的NaN值

pandas.DataFrame.apply() 使用方括号过滤时产生 NaN

使用dnbinom()在负二项式回归中产生的NaN

Python:使用NaN对数组进行排序

规模转化产生的NaN

R Exponent产生NaN

在Array中使用名称会在Firefox中产生不同的结果

在另一个数组中使用array.push产生未定义

为什么对自身使用 Array.prototype.push() 会产生一个无限嵌套的数组?

array = np.int(array)TypeError:只能将长度为1的数组转换为Python标量

来自Python中2d np.array的数组的索引?

如何使用np.array声明具有不同行长的二维数组?