Numpy Tips 2 : データ欠損のある配列に対して代数演算などを行いたい
データ欠損のある配列に対して代数演算などを行いたい場合
numpy.ma.MaskedArray
を用いたフィルタリングが便利だ.
具体的にはarrayにnanとinfが入ったものを加法演算する場合を考える.
import numpy as np from numpy import ma a=np.array([np.inf,np.nan,1,2,3]) mask=np.isinf(a) + np.isnan(a) masked_a=ma.masked_array(a , mask=mask) print masked_a # > [-- -- 1.0 2.0 3.0] print masked_a.sum() #>6
c++ のconst修飾子の代替物@numpy mcbiophys.hatenablog.com