0

3 つのグループ A、B、C の性別 (0 = 男性、1 = 女性) を表す 3 つのデータ ベクトルがあります。

例えば

A = [0 0 0 0 1 1 1 1 0 0];
B = [1 1 1 1 1 1 1 0];
C = [1 0 0 1 0 1 1 0 1 1 1 1 1];

および男女の相対数

n_maleA =6;
n_femaleA =4;
n_maleB = 1;
n_femaleB = 7;
n_maleC = 4;
n_femaleC = 9;

3つのグループ間で性別に有意差があるかどうかを知りたい. これを行うには、使用できることを読みました

[tbl,chi2stat,pval] = crosstab(x1,x2)

これを 2 つ以上のデータ グループと異なる長さのデータで使用するにはどうすればよいですか? 私のケースに合った MATLAB でカイ二乗検定を実行する他の方法はありますか?

前もって感謝します

4

1 に答える 1

1

男性/女性の割合がグループ間で異なるかどうかをテストしたいようです。これを行う 1 つの方法は、男性/女性を応答変数として、グループ メンバーシップをカテゴリ予測子として使用するロジスティック回帰モデルを使用することです。次に、モデル全体と定数モデルのカイ 2 乗検定を見てください。

>> mf = [A';B';C'];
>> group = [ones(length(A),1);2*ones(length(B),1);3*ones(length(C),1)];
>> group = nominal(group);
>> fitglm(group,mf,'distribution','binomial')
ans = 
Generalized Linear regression model:
    logit(y) ~ 1 + x1
    Distribution = Binomial

Estimated Coefficients:
                   Estimate      SE        tStat       pValue 
                   ________    _______    ________    ________
    (Intercept)    -0.40547     0.6455    -0.62814     0.52991
    x1_2             2.3514     1.2488      1.8829    0.059715
    x1_3             1.2164    0.88192      1.3793     0.16781

31 observations, 28 error degrees of freedom
Dispersion: 1
Chi^2-statistic vs. constant model: 4.79, p-value = 0.0913
于 2013-12-05T17:25:55.773 に答える