Main Content

symerr

シンボル誤り数とシンボル エラー レートの計算

説明

[number,ratio] = symerr(x,y) は、xy の要素を比較します。xy のサイズにより、比較する要素が決定されます。出力 number は、異なる要素の数を示すスカラーまたはベクトルです。出力 ratio は、"小さな" 入力内の合計要素数で除算した number と同じです。

[number,ratio] = symerr(x,y,flg) は、xy の要素を比較します。オプションの入力 flg および x と y のサイズにより、number のサイズが決定されます。

[number,ratio,individual] = symerr(...) は、xy の異なる要素を示すバイナリ行列 individual を返します。この比較に矛盾がなければ individual の要素は 0 で、矛盾があれば 1 です。

すべて折りたたむ

行列と別の行列の要素の比較

x = [1,1,3,1;3,2,2,2;3,3,8,3]
x = 3×4

     1     1     3     1
     3     2     2     2
     3     3     8     3

aMatrix = [1,1,1,1;2,2,2,2;3,3,3,3]
aMatrix = 3×4

     1     1     1     1
     2     2     2     2
     3     3     3     3

[number1,ratio1] = symerr(x,aMatrix)
number1 = 3
ratio1 = 0.2500

行列と行ベクトルの要素の比較

x = [1,1,3,1;3,2,2,2;3,3,8,3]
x = 3×4

     1     1     3     1
     3     2     2     2
     3     3     8     3

aRowVector = [1,2,3,1]
aRowVector = 1×4

     1     2     3     1

[number2,ratio2] = symerr(x,aRowVector)
number2 = 3×1

     1
     3
     4

ratio2 = 3×1

    0.2500
    0.7500
    1.0000

行列と列ベクトルの要素の比較

x = [1,1,3,1;3,2,2,2;3,3,8,3]
x = 3×4

     1     1     3     1
     3     2     2     2
     3     3     8     3

aColumnVector = [1;2;3]
aColumnVector = 3×1

     1
     2
     3

[number3,ratio3] = symerr(x,aColumnVector)
number3 = 1×4

     1     0     2     0

ratio3 = 1×4

    0.3333         0    0.6667         0

symerr で別の比較方法を指定できます。この例では、フラグを使用して既定の行単位の比較をオーバーライドします。数値と比率はスカラーです。

format rat;
[number,ratio,loc] = symerr([1 2; 3 4],[1 3],'overall')
number = 
       3       

ratio = 
       3/4     

loc = 2x2 logical array

   0   1
   1   1

入力引数

すべて折りたたむ

比較する最初の入力。ベクトルまたは行列として指定します。

データ型: double

比較する 2 番目の入力。ベクトルまたは行列として指定します。

データ型: double

symerr が比較する要素、および symerr が出力を計算する方法を指定する既定値をオーバーライドするためのオプション引数。

  • 'overall' –– xy を要素ごとに比較します。

  • 'column-wise' –– x の m 番目の行と y の m 番目の行を比較します。

  • 'row-wise' –– x の m 番目の列と y の m 番目の列を比較します。

詳細については、要素の比較の指定の節を参照してください。

出力引数

すべて折りたたむ

xy の間で異なる要素の数。スカラーまたはベクトルとして返されます。number のサイズは、オプションの入力 flg、および xy の次元により決まります。詳細については、既定の要素の比較および要素の比較の指定の節を参照してください。

異なる要素の数 number"小さな" 入力の合計要素数の比率。スカラーとして返されます。

個々のシンボル比較の結果。入力 x および y と同じサイズおよび次元の配列として返されます。出力配列では、x の要素と y の要素が等しいすべての位置に 0 が含まれています。その 2 つの要素が異なる位置には 1 が含まれています。

データ型: logical

詳細

すべて折りたたむ

既定の要素の比較

関数 symerr は、x の要素のバイナリ表現を、y の要素のバイナリ表現と比較します。オプション引数 flg を指定しない場合、symerr は入力 xy の形状を使用して要素の比較方法を決定します。

次の図は、xy の形状によって symerr が比較する要素が決まる様子を示したものです。

bit (or symbol) error comparison

  • xy が同じ次元の行列である場合、symerrxy を要素ごとに比較します。number はスカラーです。図の (a) を参照してください。

  • 一方が行 (個々の列) ベクトルで、もう一方が 2 次元行列の場合、symerr はベクトルを要素ごとに、行列の "各行 (個々の列)" と比較します。ベクトルの長さは、行列の列 (個々の行) の数に等しくなければなりません。number は列 (個々の行) ベクトルであり、その m 番目のエントリは、ベクトルと行列の m 番目の行 (個々の列) を比較するとき異なるエントリ数を示します。図の (b) と (c) を参照してください。

要素の比較の指定

flg を使用して、symerr が比較する要素、および symerr が出力を計算する方法を指定する既定値をオーバーライドします。flg の値は、'overall''column-wise'、および 'row-wise' です。次の表では、さまざまな入力の組み合わせからの結果の違いを説明しています。いずれのケースでも、ratio は、y の合計要素数で除算した number です。

2 次元行列 x と他の入力 y との比較

y の形状flg比較のタイプ
2 次元行列 'overall' (既定の設定) 要素ごと シンボル誤り総数
'column-wise'x の m 番目の列と y の m 番目の列を比較 エントリが各列のシンボル誤り数である行ベクトル
'row-wise'x の m 番目の行と y の m 番目の行を比較 エントリが各行のシンボル誤り数である列ベクトル
列ベクトル 'overall' yx の各列を比較 シンボル誤り総数
'column-wise' (既定の設定) yx の各列を比較 エントリが x の各列のシンボル誤り数である行ベクトル

行ベクトル

'overall'yx の各行を比較 シンボル誤り総数
'row-wise' (既定の設定) yx の各行を比較 エントリが x の各行のシンボル誤り数である列ベクトル

拡張機能

C/C++ コード生成
MATLAB® Coder™ を使用して C および C++ コードを生成します。

バージョン履歴

R2006a より前に導入