0
np.zeros()
で行列を作成し、それをsp.issparse()
でテストしました。行列がゼロであっても(なぜなら、大部分がゼロ行列の場合でも)私が偽になるのはなぜですか?なぜnumpy.zeros()行列がscipy.sparse.issparse()でfalseになるのですか?
np.zeros()
で行列を作成し、それをsp.issparse()
でテストしました。行列がゼロであっても(なぜなら、大部分がゼロ行列の場合でも)私が偽になるのはなぜですか?なぜnumpy.zeros()行列がscipy.sparse.issparse()でfalseになるのですか?
スパース行列には異なるメモリ表現があります。つまり、重要なセルはゼロではなく、セルがメモリに割り当てられているということです。
np.zeros()
は、配列のすべてのフィールドを0にしてもメモリに割り当てますが、スパース行列には割り当てません。
numpy行列/配列を疎行列に変換する方法については、hereを参照してください。
この 'issparse'は、0の割合ではなく、行列クラスをテストします – hpaulj
この関数のコードはちょうど' isinstance(x、sparse.spmatrix) 'です。 – hpaulj