【Python/NumPy】MaskedArrayとndarrayの違いと注意点|データ欠損処理の落とし穴

NumPyで欠損値をマスクして計算したら、data[~data.mask]とdata.data[~data.mask]で結果が微妙に変わって困った、という話です。 当時は「intとfloatの違いが原因」で終わらせていたのですが、2026年7月に改めて調べ直したところ、原因は2つあり、しかも片方はNumPy側に未解決のバグとして報告されているものでした。当時…