以下は Numpy マスク配列の詳細な説明です。参考になれば幸いです。一緒に見てみましょう
データは多くの場合乱雑で、空白文字または処理不可能な文字が含まれています。マスクされた配列では、不完全または無効なデータ ポイントが事実上無視されます。マスクされた配列は、通常の配列とブール配列で構成されます。ブール配列が True の場合、通常の配列の添字に対応する値が無効であることを意味します。それ以外の場合、False は、通常の配列に対応する値が有効であることを意味します。 。
作成方法は、まずブール配列を作成し、次に numpy.ma サブルーチン パッケージが提供する関数を使用してマスクされた配列を作成します。マスクされた配列は、さまざまな必要な関数を提供します。
作成されたインスタンスは次のとおりです:
import numpy as np origin = np.arange(16).reshape(4,4) #生成一个4×4的矩阵 np.random.shuffle(origin) #随机打乱矩阵元素 random_mask = np.random.randint(0,2,size=origin.shape)#生成随机[0,2)的整数的4×4矩阵 mask_array = np.ma.array(origin,mask=random_mask)#生成掩码式矩阵 print(mask_array)
結果は次のとおりです:
[[12 13 -- 15] [8 9 10 --] [-- -- -- 3] [-- 5 6 --]]
は次のように使用されます。
1.負の数の対数
import numpy as np triples = np.arange(0,10,3)#每隔3取0到10中的整数,(0,3,6,9) signs = np.ones(10)#(1,1,1,1,1,1,1,1,1) signs[triples] = -1#(-1,1,1,-1,1,1,-1,1,1,-1) values = signs * 77#(-77,77,77,-77,77,77,-77,77,77,-77) ma_log = np.ma.log(values)#掩码式取对数 print(ma_log)
結果は次のようになります:
[-- 4.343805421853684 4.343805421853684 -- 4.343805421853684 4.343805421853684 -- 4.343805421853684 4.343805421853684 --]
2. 関連おすすめ: Numpy での配列の再整形、マージメソッドと分割メソッドについて詳しく説明します 特定の条件を満たすインデックスメソッドを返すために ndarray 配列を numpy に実装します 以上がNumpy マスク配列の詳細な説明の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。import numpy as np
inside = np.ma.masked_outside(array,min,max)