我使用Python numpy的陣列替換的值(轉換成2D陣列柵格,特異性)和我想要做的是採取具有-999任意虛擬值一個陣列表示「無數據」,我想從一個不同的陣列中的正確的位置相同的大小和形狀與相應的「真實」值替換那些值。我找不到一個非常類似的問題,但請注意,我是Python和Numpy的新手。的Python numpy的:在一個陣列中與相應的值在另一個陣列
但我想要做的是這樣的:
array_a =
([[0.564,-999,-999],
[0.234,-999,0.898],
[-999,0.124,0.687],
[0.478,0.786,-999]])
array_b =
([[0.324,0.254,0.204],
[0.469,0.381,0.292],
[0.550,0.453,0.349],
[0.605,0.582,0.551]])
使用array_b的價值觀,以填補在array_a的-999值,並創建一個新的數組:
new_array_a =
([[0.564,0.254,0.204],
[0.234,0.381,0.898],
[0.550,0.124,0.687],
[0.478,0.786,0.551]])
我不噸真的想改變數組的形狀或尺寸,因爲我要回來了轉換成光柵之後,所以我需要在正確的位置正確的價值觀。 這樣做的最好方法是什麼?
查找到['masking'](https://docs.scipy.org/doc/numpy/user/basics.indexing.html#boolean-or-mask -index陣列)。 – Divakar
是的,我看了一下,我能夠掩飾出array_a中的-999值,使用此: mask_a = ma.masked_where(array_a <-1,array_a) 但那又如何?我剛剛刪除了-999值,我不知道如何從array_b中的值到相同的位置? – Matt