コンテンツ
MATLAB(科学計算ソフトウェア)配列のゼロ値は、データの解析を困難にする可能性があります。統計や信号処理は無意味な結果を生み出す可能性があり、null値が表現されている場合はグラフィックを読むのが面倒です。それらを抽出する - それらをあなたの配列から削除する - あなたが意味のある結果を達成するために有用なデータを扱うことを可能にするでしょう。
説明書
NULL値を抽出すると、データの便利なグラフを作成するのに役立ちます。 (ストックフォト/コムストック/ゲッティイメージズ)-
元の配列を別の変数にコピーしてください。ゼロを削除する前のように配列を使用する必要がある場合は、この新しい変数を使用できます。
たとえば、配列がMと呼ばれる場合は、Mzerosという新しい変数を割り当てます。これを行うには、 "MATLAB"コマンドラインで "Mzeros = M"と入力します(引用符は含みません)。
-
後で必要に応じて "MATLAB"の "dlmwrite"関数を使用して、元の配列をテキストファイルに保存します。変数ストレージが誤って削除または書き換えられた場合は、テキストファイルから元のデータを再ロードできます。
たとえば、元の配列がMzeros変数に格納されている場合は、「dlmwrite( 'Mzeros.dat'、Mzeros)」と入力して、Mzeros.datという名前のテキストファイルでMzerosに書き込みます。
データがすでにテキストファイルに保存されている場合は、この手順を省略できます。
-
アレイのサイズとフォーマットを同じにする必要があるかどうかを決めます。行と列に特定の意味がある場合は、そのようにしてください(たとえば、各行が異なる実験的テストを表し、各列が異なる測定量を表す)。同じサイズとフォーマットを維持するには、各ゼロ値をNaN値(「数字ではない」を表す)に置き換えます。
Mという配列でゼロ値をNaNに置き換えるには、 "M(M == 0)= NaN"と入力します。必ず2つの等号を使用してM == 0を入力してください。このコマンドは、 "MATLAB"に、ゼロに等しいMのすべての要素を見つけて、それらをNaNに置き換えるように指示します。
配列内のすべてのものは同じ位置(同じ行と列)に残りますが、すべてのゼロはNaNになります。ほとんどの "MATLAB"関数はNaN値を無視するので、NaNがなくてもチャートにデータを入れてそれらを分析することができ、重要な結果が得られます。
-
配列が単純な値のリストで、重要な行や列がない場合は、ゼロ要素を完全に削除できます(NaN値に置き換えるのではなく)。 Mという名前の配列内のNULL要素を削除するには、 "M(M == 0)= []"と入力します(引用符は含みません)。必ず2つの等号を使用してM == 0を入力してください。このコマンドは、 "MATLAB"に0に等しいすべての要素を見つけてそれらを[]に置き換えるように指示します。 []は "空"を表します。値を[]に置き換えると、要素が削除されます。
Mが2次元配列の場合、列の意味で、元のMのすべての非ゼロ要素を含む列ベクトルになります。たとえば、Mが2行2列の配列の場合、
[1 6 0 3 2 0 7 4]
今では
[1 2 6 7 3 4]
Mがベクトル(単なる行または列)の場合は、短いベクトルになります。たとえば、Mが[1 2 0 3]であれば、今は[1 2 3]になります。
ゼロ要素を削除すると、配列のサイズとフォーマットが変わります。ただし、NaN値がない場合は、これらの値を無視しない "MATLAB"関数を使用してもデータを分析できます。
お知らせ
- ゼロ値を削除する前に、実際には意味がないことを確認してください。それらがあなたのデータの中で何かを意味するならば、それらを取り除くことはあなたに間違っていて壊れた結果を与えるかもしれません。
- 配列が大きすぎる場合、別の変数にそれをコピーすると大量のメモリが必要になる可能性があり、 "MATLAB"は遅くて問題があります。それが1つのテキストファイルに保存されていることを確認し、それを別の変数にコピーしないでください。
- NaNを無視しない関数はほとんどなく、それらを使用するとエラーや無意味な結果を返すことがあります。データ解析に使用する各関数については、 "MATLAB"のドキュメントを確認してください。
必要なもの
- 数値データ
- コンピュータ
- MATLAB