MATLAB 変位値
このチュートリアルでは、MATLAB で binoinv()
、norminv()
、および quantile()
関数を使用して、二項分布、標準正規分布、およびデータ セットの分位点を計算する方法について説明します。
分布の MATLAB 分位数
変位値は、分布の特定の部分を表します。 これらは、分布内の特定の制限の上下の値である可能性があります。
たとえば、ディストリビューションを特定の部分に分割するとします。 その場合、各部分を特定の分位数で表すことができ、分布の各分位数または部分は、その内部に同じ面積または値を持ちます。
たとえば、分布を 4つの部分に分割すると、4つの等しい部分ができ、各部分は分布の総面積の 25% をカバーします。 分位点で分布の各部分を表すことができます。
MATLAB には、二項分布および標準正規分布の特定の分位点を見つけるための組み込み関数が用意されています。 binoinv()
関数を使用して二項分布の分位点を見つけ、norminv()
関数を使用して標準正規分布の分位点を見つけることができます。
特定の分位点を見つけるには、各関数に 3つの入力を渡す必要があります。 binoinv()
関数の最初の引数は分位数、2 番目の引数は独立試行の値 N
、4 番目の引数は成功確率 P
の値です。
binoinv()
関数の 3つの入力は、スカラー、ベクトル、行列、または多次元の配列にすることができ、それらはすべて同じサイズである必要があります。 2 番目の引数は正の整数で、他の 2つの引数の値は 0 から 1 の間である必要があります。
norminv()
関数の最初の引数は分位数、2 番目の引数は平均 mu
の値、4 番目の引数は標準偏差 sigma
の値です。 平均値と標準偏差値を渡さなくても、分位値を見つけることができます。
デフォルトでは、norminv()
関数は平均値として 0 を使用し、標準偏差値として 1 を使用します。 たとえば、binoinv()
関数と norminv()
関数を使用して、二項分布と正規分布の分位数 0.02
を見つけてみましょう。
以下のコードを参照してください。
clc
clear
b = binoinv(0.02,50,0.3)
n = norminv(0.02,0,1)
出力:
b =
9
n =
-2.0537
上記のコードでは、独立した試行 N
の値として 50 を使用し、binoinv()
関数で成功する試行の確率の値として 0.3
を使用しました。 norminv()
関数で平均値として 0 を使用し、標準偏差値として 1 を使用しました。
binoinv()
関数の詳細については、この リンク(https://www.mathworks.com/help/stats/binoinv.html) を確認してください。 norminv()
関数の詳細については、この リンク(https://www.mathworks.com/help/stats/binoinv.html) を確認してください。
データセットの MATLAB 変位値
データセットの分位点を見つけたい場合は、MATLAB の quantile()
関数を使用できます。 quantile()
関数には、以下に示す 4つの構文があります。
Output = quantile(dataset,p)
Output = quantile(___,"all")
Output = quantile(___,dim)
Output = quantile(___,"Method",method)
最初の構文は、変数 p
によって定義された確率に従って、入力データ セットに存在するすべての要素の変位値を返します。 入力データセットがベクトルの場合、出力はスカラーまたはベクトルになり、確率変数 p
と同じ長さになります。
入力データが行列の場合、出力はベクトルまたは行列になり、確率変数 p
の長さは出力ベクトルの行に等しくなります。 入力データ セットが多次元配列の場合、変位値はデータ セットの最初の次元に沿って計算されます。
2 番目の構文は、指定されたデータ セットのすべての変位値を返します。 3 番目の構文は、変位値が計算される次元を設定します。
デフォルトでは、関数は行列または多次元配列の最初の次元で動作します。 ただし、quantile()
関数の 3 番目の引数として次元番号を定義することで、他の次元に設定できます。 4 番目の構文は、変位値の計算に使用される方法を設定するために使用されます。これは、デフォルトで exact
方法に設定されていますが、approximate
に設定することもできます。
たとえば、quantile()
関数を使用して行列の変位値を見つけてみましょう。 以下のコードを参照してください。
clc
clear
m = magic(2)
q = quantile(m,0.3)
出力:
m =
1 3
4 2
q =
1.3000 2.1000
上記のコードでは、magic()
関数を使用して 2 行 2 列の行列を作成しました。 quantile()
関数が各列の変位値を計算したことを出力で確認できます。
quantile()
関数の詳細については、この リンク を確認してください。