ここに私の入力があります:
data = np.array ( [ ( 'a2', 'b1', 'c1' ), ( 'a1', 'b1', 'c1' ), ( 'a2', np.NaN, 'c2' ) ], dtype = [ ( 'A', 'O' ), ( 'B', 'O' ), ( 'C', 'O' ) ] ) . view ( np.recarray)
これを出力として欲しい:
rec.array ( [ ( 'a2', 'b1', 'c1' ), ( 'a1', 'b1', 'c1' ) ], dtype = [ ( 'A', 'O'), ( 'B', 'O' ), ( 'C', 'O' ) ] )
私が試してみました:
data [ data [ 'B' ] ! = np.NaN ] . view ( np.recarray )
しかし、うまくいきません。
data [ data [ 'A' ] ! = 'a2' ] . view ( np.recarray )
目的の出力が得られます。
このメソッドが機能しないのはなぜnp.NaN
ですか? np.NaN
オブジェクト データ型の再配列の値を含む行を削除するにはどうすればよいですか? また、~np.isnan()
オブジェクト データ型では機能しません。