Main Content

skewness

説明

y = skewness(X) は、X の標本歪度を返します。

  • X がベクトルである場合、skewness(X)X 内の要素の歪度であるスカラー値を返します。

  • X が行列である場合、skewness(X)X の各列の標本歪度が格納されている行ベクトルを返します。

  • X が多次元配列である場合、skewness(X)X の大きさが 1 でない最初の次元に作用します。

y = skewness(X,flag) は、バイアスを補正するか (flag = 0) しないか (flag = 1、既定値) を指定します。X が母集団からの標本を表す場合、X の歪度は偏っています。つまり、標本サイズに基づく体系的な量だけ、母集団の歪度とは異なる傾向にあります。flag0 に設定して、この体系的なバイアスに対して調整できます。

y = skewness(X,flag,'all') は、X のすべての要素の歪度を返します。

y = skewness(X,flag,dim) は、X の作用次元 dim に沿った歪度を返します。

y = skewness(X,flag,vecdim) は、ベクトル vecdim で指定された次元における歪度を返します。たとえば、X が 2 x 3 x 4 の配列である場合、skewness(X,1,[1 2]) は 1 x 1 x 4 の配列を返します。出力配列の各要素は、X の対応するページにおける要素の偏った歪度です。

すべて折りたたむ

結果の再現性を得るため、乱数シードを設定します。

rng('default')

5 行 4 列の行列を生成します。

X = randn(5,4)
X = 5×4

    0.5377   -1.3077   -1.3499   -0.2050
    1.8339   -0.4336    3.0349   -0.1241
   -2.2588    0.3426    0.7254    1.4897
    0.8622    3.5784   -0.0631    1.4090
    0.3188    2.7694    0.7147    1.4172

X の標本歪度を求めます。

y = skewness(X)
y = 1×4

   -0.9362    0.2333    0.4363   -0.4075

y は、X の各列の標本歪度が含まれている行ベクトルです。

入力ベクトルに対して、入力引数 flag を指定することにより、歪度の計算におけるバイアスを補正します。

結果の再現性を得るため、乱数シードを設定します。

rng('default') 

長さ 10 のベクトルを生成します。

x = randn(10,1)
x = 10×1

    0.5377
    1.8339
   -2.2588
    0.8622
    0.3188
   -1.3077
   -0.4336
    0.3426
    3.5784
    2.7694

x の偏った歪度を求めます。既定では、skewnessflag の値を 1 に設定して、偏った歪度を計算します。

y1 = skewness(x) % flag is 1 by default
y1 = 0.1061

flag の値を 0 に設定して、バイアスを補正した x の歪度を求めます。

y2 = skewness(x,0)
y2 = 0.1258

多次元配列のさまざまな次元に沿った歪度を求めます。

結果の再現性を得るため、乱数シードを設定します。

rng('default') 

4 x 3 x 2 の乱数行列を作成します。

X = randn([4,3,2])
X = 
X(:,:,1) =

    0.5377    0.3188    3.5784
    1.8339   -1.3077    2.7694
   -2.2588   -0.4336   -1.3499
    0.8622    0.3426    3.0349


X(:,:,2) =

    0.7254   -0.1241    0.6715
   -0.0631    1.4897   -1.2075
    0.7147    1.4090    0.7172
   -0.2050    1.4172    1.6302

既定の次元に沿って X の歪度を求めます。

Y1 = skewness(X)
Y1 = 
Y1(:,:,1) =

   -0.8084   -0.5578   -1.0772


Y1(:,:,2) =

   -0.0403   -1.1472   -0.6632

既定では、skewness は、サイズが 1 ではない X の最初の次元に沿って作用します。このケースでは、この次元は X の 1 番目の次元です。したがって、Y1 は 1 x 3 x 2 の配列です。

2 番目の次元に沿って X の偏った歪度を求めます。

Y2 = skewness(X,1,2)
Y2 = 
Y2(:,:,1) =

    0.6956
   -0.5575
    0.0049
    0.6033


Y2(:,:,2) =

   -0.6969
    0.1828
    0.7071
   -0.6714

Y2 は 4 x 1 x 2 の配列です。

3 番目の次元に沿って X の偏った歪度を求めます。

Y3 = skewness(X,1,3)
Y3 = 4×3
10-15 ×

         0    0.1597    0.5062
    0.1952         0         0
         0   -0.2130         0
    0.3654         0    0.4807

Y3 は 4 行 3 列の行列です。

入力引数 'all' および vecdim を使用して、複数次元における歪度を求めます。

結果の再現性を得るため、乱数シードを設定します。

rng('default')

4 x 3 x 2 の乱数行列を作成します。

X = randn([4 3 2])
X = 
X(:,:,1) =

    0.5377    0.3188    3.5784
    1.8339   -1.3077    2.7694
   -2.2588   -0.4336   -1.3499
    0.8622    0.3426    3.0349


X(:,:,2) =

    0.7254   -0.1241    0.6715
   -0.0631    1.4897   -1.2075
    0.7147    1.4090    0.7172
   -0.2050    1.4172    1.6302

X の偏った歪度を求めます。

yall = skewness(X,1,'all')
yall = 0.0916

yall は、入力データ セット X 全体の偏った歪度です。

1 番目の次元と 2 番目の次元を指定して、X の各ページの偏った歪度を求めます。

ypage = skewness(X,1,[1 2])
ypage = 
ypage(:,:,1) =

    0.1070


ypage(:,:,2) =

   -0.6263

たとえば、ypage(1,1,2)X(:,:,2) 内の要素の偏った歪度です。

1 番目の次元と 3 番目の次元を指定して、X(:,i,:) の各スライスの要素の偏った歪度を求めます。

ycol = skewness(X,1,[1 3])
ycol = 1×3

   -1.0755   -0.3108   -0.2209

たとえば、ycol(3)X(:,3,:) 内の要素の偏った歪度です。

入力引数

すべて折りたたむ

母集団から抽出した標本を表す入力データ。ベクトル、行列または多次元配列を指定します。

  • X がベクトルである場合、skewness(X)X 内の要素の歪度であるスカラー値を返します。

  • X が行列である場合、skewness(X)X の各列の標本歪度が格納されている行ベクトルを返します。

  • X が多次元配列である場合、skewness(X)X の大きさが 1 でない最初の次元に作用します。

X が行列または配列である場合に作用次元を指定するには、入力引数 dim を使用します。

skewness は、X 内の NaN 値を欠損値として扱い、削除します。

データ型: single | double

バイアスのインジケーター。0 または 1 を指定します。

  • flag1 (既定) である場合、X の歪度は偏っています。つまり、標本サイズに基づく体系的な量だけ、母集団の歪度とは異なる傾向にあります。

  • flag0 である場合、skewness は体系的なバイアスを補正します。

データ型: single | double | logical

作用する対象となる次元。正の整数を指定します。dim の値を指定しなかった場合、X のサイズが 1 ではない最初の次元が既定値になります。

行列 X の歪度を考えます。

  • dim が 1 に等しい場合、skewnessX の各列の標本歪度が格納されている行ベクトルを返します。

  • dim が 2 に等しい場合、skewnessX の各行の標本歪度が格納されている列ベクトルを返します。

dimndims(X) より大きい場合、または size(X,dim) が 1 である場合、skewnessX と同じサイズの NaN の配列を返します。

データ型: single | double

次元のベクトル。正の整数ベクトルを指定します。vecdim の各要素は、入力配列 X の次元を表します。出力 y の指定された作用次元における長さは 1 です。他の次元の長さは、Xy で同じになります。

たとえば、X が 2 x 3 x 3 の配列である場合、skewness(X,1,[1 2]) は 1 x 1 x 3 の配列を返します。出力配列の各要素は、X の対応するページにおける要素の偏った歪度です。

Mapping of input dimension of 2-by-3-by-3 to output dimension of 1-by-1-by-3

データ型: single | double

出力引数

すべて折りたたむ

歪度。スカラー、ベクトル、行列または多次元配列として返されます。

アルゴリズム

歪度は標本の平均値周りのデータの非対称性の尺度です。歪度が負である場合、データは平均値の右側よりも左側に大きく広がります。歪度が正である場合、データは右側に大きく広がります。正規分布 (または完全に対称な分布) の歪度はゼロになります。

分布の歪度は次式で定義されます。

s=E(xμ)3σ3,

ここで、µ は x の平均値、σ は x の標準偏差であり、E(t) は数量 t の期待値を表します。関数 skewness は、この母集団における値が標本ではどのようになるかを計算します。

flag1 に設定した場合、歪度は偏り、次の方程式が適用されます。

s1=1ni=1n(xix¯)3(1ni=1n(xix¯)2)3.

flag0 に設定した場合、skewness は体系的なバイアスを補正し、次の方程式が適用されます。

s0=n(n1)n2s1.

このバイアス補正式では、3 つ以上の要素が X に含まれている必要があります。

拡張機能

バージョン履歴

R2006a より前に導入

参考

| | | |

トピック