ポアソン仮説に対して x をテストする場合、p を計算するラムダとして mean(x) を使用するので、df = k - 2; 正規仮説に反する場合、平均 (x) と var(x) を使用して p を計算するので、df = k - 3. p を取得するために推定されたパラメーターによって失われた df を知らずに、R はどのようにして chisq 値を返すことができますか?
#say I have some data that I want to test against Poisson
data = c(0, 0, 0, 1, 0, 1, 2, 2);
lambda = mean(data); #0.75
bins = c(0, 1, 2, 3); #bins for grouping data
x = c(4, 2, 2, 0); #number of observations for bins
p = dpois(bins, lambda);
chisq.test(x, p=p, rescale.p=TRUE)
#the df should be number of bins - 1 - number of estimates, so 2, but R gave df = 3, ignoring (not knowing) the 1df lost in lambda.
元の観測値をビンに基づいて頻度ベクトル (x) にグループ化し、元のデータを使用してビンに基づいてベクトル (p) に帰無仮説確率を割り当て、未知の帰無仮説分布パラメーターを推定します。次に、chisq.test(x, p=p, rescale.p=TRUE) を呼び出して、分布の仮定に対して x をテストします。そのようなテストを行うのは正しい方法ですか?