私は、numpyで数値をNaNに置き換え、numpy.nan_to_numのような関数を探していますが、逆の場合を除きます。
それぞれが一意に定義されたNoDataValueを持つことができるため、異なる配列が処理されると、数は変わる可能性があります。辞書を使用している人々を見てきましたが、配列は大きく、正と負の両方のフロートで満たされています。キーを作成するためにこれらのすべてをロードするのは効率的ではないと思われます。
私は以下を使用してみましたが、any()またはall()を使用する必要があるnumpy。要素ごとに反復する必要があることを理解していますが、組み込み関数でこれを実現できることを願っています。
def replaceNoData(scanBlock, NDV):
for n, i in enumerate(array):
if i == NDV:
scanBlock[n] = numpy.nan
NDVはGDALのデータなしの値であり、配列はnumpy配列です。
マスクされた配列はおそらく行く方法ですか?
A[A==NDV]=numpy.nan
A == NDVは、Aのインデックスとして使用できるブール配列を生成します