1. ホーム
  2. matlab

[解決済み] Matlab関数NNZ, 数値ゼロ

2022-02-25 01:28:20

質問

私はMatlab上で最小二乗非負解回復のコンテキストでコードに取り組んでいます。私は(それはこの質問にとってそれほど重要ではないので、詳細はありません)私の行列と配列の非ゼロ要素の数を知る必要があります。

matlabの関数NNZは私が望むことを正確に行いますが、Matlabが何を"zero element"と考えているかについての詳細な情報が必要なことが起こりました。

NNZ関数について、この情報を持っている人はいますか。

ありがとうございます。

PS : 私はMatlabの専門家ではないので、本当に簡単な作業でしたらご容赦ください。

Matlab上で "open nnz" を試してみましたが、コメントされたコード行の小さなスクリプトが表示されるだけでした...。

解決方法は?

以来 nnz でないものはすべてカウントされます。 正確 ゼロ(つまり 1e-100 が0でない場合)には、単に 関係演算子 をデータに入れて、ゼロ付近の許容範囲を超える値がいくつあるかを調べます。行列の場合 A :

n = nnz(abs(A) > 1e-16);

また 浮動小数点数の比較に関するこの議論 が参考になるかもしれません。