chi2gof
カイ二乗適合度検定
説明
は、1 つ以上の名前と値のペアの引数で指定された追加オプションを使用して、カイ二乗適合度検定の検定の判定を返します。たとえば、正規分布以外の分布に対して検定を行ったり、検定の有意水準を変更したりできます。h
= chi2gof(x
,Name,Value
)
例
正規分布の検定
標準正規確率分布オブジェクトを作成します。この分布の乱数を使用してデータ ベクトル x
を作成します。
pd = makedist('Normal'); rng default; % for reproducibility x = random(pd,100,1);
x
のデータは正規分布の母集団から得られたデータであるという帰無仮説を検定します。
h = chi2gof(x)
h = 0
戻り値 h = 0
は、chi2gof
が既定の有意水準 5% で帰無仮説を棄却しないことを示します。
異なる有意水準による仮説の検定
標準正規確率分布オブジェクトを作成します。この分布の乱数を使用してデータ ベクトル x
を作成します。
pd = makedist('Normal'); rng default; % for reproducibility x = random(pd,100,1);
x
のデータは正規分布の母集団から得られたデータであるという帰無仮説を有意水準 1% で検定します。
[h,p] = chi2gof(x,'Alpha',0.01)
h = 0
p = 0.3775
戻り値 h = 0
は、chi2gof
が有意水準 1% で帰無仮説を棄却しないことを示します。
確率分布オブジェクトの使用によるワイブル分布の検定
電球の寿命の標本データを読み込みます。
load lightbulb
データ行列の 1 列目からベクトルを作成します。この列には時間で示された電球の寿命が含まれています。
x = lightbulb(:,1);
x
のデータはワイブル分布の母集団から得られたデータであるという帰無仮説を検定します。fitdist
を使用して、データから推定された A
パラメーターと B
パラメーターをもつ確率分布オブジェクトを作成します。
pd = fitdist(x,'Weibull'); h = chi2gof(x,'CDF',pd)
h = 1
戻り値 h = 1
は、chi2gof
が既定の有意水準 5% で帰無仮説を棄却することを示します。
ポアソン分布の検定
データ プーリングに使用する 0 から 5 の番号が付けられた 6 個のビンを作成します。
bins = 0:5;
ビンごとの観測数を含むベクトルを作成し、観測の合計数を計算します。
obsCounts = [6 16 10 12 4 2]; n = sum(obsCounts);
データにポアソン確率分布オブジェクトを当てはめ、ビンごとの期待カウント数を計算します。転置演算子 .'
を使用し、bins
および obsCounts
を行ベクトルから列ベクトルに変換します。
pd = fitdist(bins','Poisson','Frequency',obsCounts'); expCounts = n * pdf(pd,bins);
obsCounts
のデータは、パラメーター lambda が lambdaHat
に等しいポアソン分布から得られたデータであるという帰無仮説を検定します。
[h,p,st] = chi2gof(bins,'Ctrs',bins,... 'Frequency',obsCounts, ... 'Expected',expCounts,... 'NParams',1)
h = 0
p = 0.4654
st = struct with fields:
chi2stat: 2.5550
df: 3
edges: [-0.5000 0.5000 1.5000 2.5000 3.5000 5.5000]
O: [6 16 10 12 6]
E: [7.0429 13.8041 13.5280 8.8383 6.0284]
戻り値 h = 0
は、chi2gof
が既定の有意水準 5% で帰無仮説を棄却しないことを示します。ベクトル E
は、帰無仮説の下でのビンごとの期待カウント数を含みます。ベクトル O
は、ビンごとに観測されたカウント数を含みます。
関数ハンドルの使用による正規分布の検定
確率分布関数 normcdf
をカイ二乗適合度検定 (chi2gof
) で関数ハンドルとして使用します。
入力ベクトル x
に含まれている標本データが正規分布に由来しており、この正規分布ではパラメーター µ および σ がそれぞれ標本データの平均 (mean
) および標準偏差 (std
) に等しいという帰無仮説を検定します。
rng('default') % For reproducibility x = normrnd(50,5,100,1); h = chi2gof(x,'cdf',{@normcdf,mean(x),std(x)})
h = 0
h = 0
という結果は、5% という既定の有意水準で chi2gof
が帰無仮説を棄却しなかったことを示しています。
入力引数
x
— 標本データ
ベクトル
仮説検定の標本データ。ベクトルとして指定します。
名前と値の引数
オプションの引数のペアを Name1=Value1,...,NameN=ValueN
として指定します。ここで Name
は引数名、Value
は対応する値です。名前と値の引数は他の引数の後ろにする必要がありますが、ペアの順序は関係ありません。
R2021a より前では、名前と値をそれぞれコンマを使って区切り、Name
を引用符で囲みます。
例: 'NBins',8,'Alpha',0.01
は、データを 8 個のビンにプールし、有意水準 1% で仮説検定を行います。
NBins
— ビンの数
10
(既定値) | 正の整数値
データのプールに使用するビンの数。'NBins'
と正の整数値で構成されるコンマ区切りのペアとして指定します。NBins
に値を指定する場合は、Ctrs
または Edges
には値を指定しないでください。
例: 'NBins',8
データ型: single
| double
Ctrs
— ビンの中心
ベクトル
ビンの中心です。'Ctrs'
と各ビンの中心の値のベクトルで構成されるコンマ区切りのペアとして指定します。Ctrs
に値を指定する場合は、NBins
または Edges
に値を指定しないでください。
例: 'Ctrs',[1 2 3 4 5]
データ型: single
| double
Edges
— ビンのエッジ
ベクトル
ビンのエッジです。'Edges'
と各ビンのエッジの値のベクトルで構成されるコンマ区切りのペアとして指定します。Edges
に値を指定する場合は、NBins
または Ctrs
には値を指定しないでください。
例: 'Edges',[-2.5 -1.5 -0.5 0.5 1.5 2.5]
データ型: single
| double
CDF
— 仮定された分布の累積分布関数
確率分布オブジェクト | 関数ハンドル | cell 配列
仮定された分布の累積分布関数です。'CDF'
と、確率分布オブジェクト、関数ハンドルまたは cell 配列で構成されるコンマ区切りのペアとして指定します。
CDF
に値を指定する場合は、Expected
に値を指定しないでください。
例: 'CDF',pd_object
データ型: single
| double
Expected
— 期待カウント数
非負値のベクトル。
ビンごとの期待カウント数です。'Expected'
と非負値のベクトルで構成されるコンマ区切りのペアとして指定します。Expected
が推定されたパラメーターに依存する場合は、NParams
を使用して chi2gof
が自由度を正しく計算できるようにします。Expected
に値を指定する場合は、CDF
に値を指定しないでください。
例: 'Expected',[19.1446 18.3789 12.3224 8.2432 4.1378]
データ型: single
| double
NParams
— 推定パラメーターの数
正の整数値
帰無分布を記述するために使用される推定パラメーターの数。'NParams'
と正の整数値で構成されるコンマ区切りのペアとして指定します。この値によって調整される検定の自由度は、累積分布関数または期待カウント数の計算に使用される推定パラメーターの数に基づいています。
NParams
の既定値は、帰無分布の指定方法に依存します。
例: 'NParams',1
データ型: single
| double
EMin
— ビンごとの期待カウント数の最小値
5
(既定値) | 非負の整数値
ビンごとの期待カウント数の最小値です。'EMin'
と非負の整数値で構成されるコンマ区切りペアとして指定します。いずれかの裾の最も端のビンに含まれている期待値が EMin
より小さい場合、それぞれの端のビンはカウントが少なくとも 5 になるまで隣接するビンと結合されます。内側のビンのカウントが 5 未満の場合、chi2gof
は警告を表示しますが、内側のビンの結合は行いません。この場合、ビンの数をより少なくする、ビンの中心やエッジを使用するなどしてすべてのビンの期待カウント数を増加させる必要があります。ビンの結合を防止するには、EMin
を 0
に指定します。
例: 'EMin',0
データ型: single
| double
Frequency
— 頻度
非負の整数値のベクトル
データ値の頻度です。'Frequency'
と、ベクトル x
と同じ長さの非負の整数値ベクトルで構成されるコンマ区切りのペアで指定します。
例: 'Frequency',[20 16 13 10 8]
データ型: single
| double
Alpha
— 有意水準
0.05
(既定値) | (0,1) の範囲のスカラー値
仮説検定の有意水準。'Alpha'
と、(0,1) の範囲内のスカラー値で構成されるコンマ区切りのペアとして指定します。
例: 'Alpha',0.01
データ型: single
| double
出力引数
h
— 仮説検定の結果
1
| 0
1
または 0
として返される仮説検定の結果。
h
= 1
の場合、有意水準Alpha
で帰無仮説が棄却されることを示します。h
= 0
の場合、有意水準Alpha
で帰無仮説が棄却できなかったことを示します。
p
— p 値
[0,1] の範囲のスカラー値
検定の p 値。[0,1] の範囲のスカラー値として返されます。p
は、帰無仮説に基づく観測値と同様に、極端な検定統計量、またはより極端な検定統計量が観測される確率です。p
の値が小さい場合、帰無仮説の妥当性に問題がある可能性があります。
stats
— 検定統計量
構造体
検定統計量。以下を含む構造体として返されます。
chi2stat
— 検定統計量の値。df
— 検定に対する自由度。edges
— プール後のビンのエッジのベクトル。O
— ビンごとの観測数のベクトル。E
— ビンごとの期待カウント数のベクトル。
詳細
カイ二乗適合度検定
カイ二乗適合度検定は、データ標本が、そのデータから推定されるパラメーターをもつ指定された確率分布から得られたデータかどうかを判断します。
検定では、データをビンにグループ化し、これらのビンに対する観測カウント数と期待カウント数を計算し、カイ二乗検定統計量を次式で計算します。
ここで Oi は観測カウント数、Ei は仮説の分布に基づく期待カウント数です。カウント数が十分大きければ、検定統計量は近似的なカイ二乗分布になります。
アルゴリズム
chi2gof
は検定統計量の値を自由度が nbins - 1 - nparams に等しいカイ二乗分布と比較します。ここで nbins はデータ プールに使用されるビンの数、nparams は期待カウント数の決定に使用される推定パラメーターの数です。検定を実施するための十分な自由度がない場合、chi2gof
は p 値に NaN
を返します。
拡張機能
GPU 配列
Parallel Computing Toolbox™ を使用してグラフィックス処理装置 (GPU) 上で実行することにより、コードを高速化します。
この関数は、GPU 配列を完全にサポートします。詳細は、GPU での MATLAB 関数の実行 (Parallel Computing Toolbox)を参照してください。
バージョン履歴
R2006a より前に導入
MATLAB コマンド
次の MATLAB コマンドに対応するリンクがクリックされました。
コマンドを MATLAB コマンド ウィンドウに入力して実行してください。Web ブラウザーは MATLAB コマンドをサポートしていません。
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list:
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)