-1

だから私は値のテーブルを持っています

v=0 1 2 3 4 5 6 7 8 9
#times obs.: 5 19 23 21 14 12 3 2 1 0

データがポアソン分布に適合すると仮定して、カイ二乗を計算することになっています。平均 u=3 で。値 >=6 をすべて 1 つのビンにグループ化する必要があります。

ポアソン分布をプロットする方法、そして何よりも、それが理にかなっている場合、どのビンに何が入るかを制御する方法がわかりません。

以前に histc を使用してヒストグラムをプロットしましたが、正規化したのは乱数でした。各ビンの量は私のために設定されました。私は超初心者です...この質問がひどい場合は申し訳ありません。

4

1 に答える 1

0

barmatlab で棒グラフをプロットするために使用します。

だから、これはあなたがすることです:

v=0:9;
f=[5 19 23 21 14 12 3 2 1 0];
fc=f(find(v<6));      % copy elements where v<=6 into a new array
fc(end+1)=sum(f(v=>6)); % append the sum of elements where v=>6 to that array
figure
bar(v(v<=6), fc);

それはトリックを行う必要があります...

ここで、実際にはカイ 2 乗の計算について質問していません。その計算では、v>6 の値をすべて 1 つのビンに入れないでください。非常に悪い結果になるからです。

別のテクニックがあります。hist関数を使用する場合、ビンを選択できます。Matlab は、制限を超えるものを最後のビンに自動的に配置します。したがって、観測が arrayObsにある場合は、次のように求められたことを実行できます。

h = hist(Obs, 0:6);
figure
bar(0:6, h)

利点は、h他の計算に配列 (周波数) を使用できることです。

代わりに行う場合

hist(Obs, 0:6)

Matlab は、単一のステートメントでグラフをプロットします (ただし、値はありません...)

于 2013-02-17T01:03:32.107 に答える