R logo

Demographics を Table で出す時、

  • 正規分布していたら 平均値と標準偏差(standard devision, SD)
  • 正規分布していなかったら 中央値と四分位範囲(inter quartile range, IQR)

で記載する。

他、統計で各群を比較する際にも、

正規分布している:パラメトリック検定 正規分布していない:ノンパラメトリック検定
対応なし 対応あり 対応なし 対応あり
スチューデントのt検定
(Unpaired t-test)
対応のあるt検定
(Paired t-test)
マン-ホイットニーのU検定
(Mann-Whitney U test)
ウィルコクソン符号付順位検定
(Wilcoxon signed rank test)
1元配置分散分析
(One-way ANOVA)
一元配置反復測定分散分析
(Repeated measures ANOVA)
クラスカル-ウォリス検定
(Kruskal-wallis test)
フリードマン検定
(Friedman test)

という感じで、正規分布の有無によって統計手法を使い分ける。

 

そして正規分布は、Shapiro.test(シャピロ・ウィルク検定)で確認。

Shapiro.test の方法

R の tapply 関数を使う。

tapply(正規分布をみたいデータ, 群間比較用のカテゴリ, shapiro.test)

例:Data_ADというデータの中で、LATEというグループ (LATE(+) or LATE(-)) 間で、Ageが正規分布しているかどうかみたい場合。

tapply(Data_AD$Age, Data_AD$LATE, shapiro.test)
output
$`LATE (-)`

Shapiro-Wilk normality test

data: X[[i]]
W = 0.97727, p-value = 0.001163


$`LATE (+)`

Shapiro-Wilk normality test

data: X[[i]]
W = 0.98626, p-value = 0.05497

Shapiro-Wilk test の帰無仮説は「正規分布している」なので、

棄却されなかったら、「2グループともに正規分布してそう」という解釈になる(セットポイントは P < 0.05)。

 

下記は「正規分布していない」の例。

tapply(Data_AD$Disease_Duration, Data_AD$LATE, shapiro.test)
output
$`LATE (-)`

Shapiro-Wilk normality test

data: X[[i]]
W = 0.96226, p-value = 4.632e-05


$`LATE (+)`

Shapiro-Wilk normality test

data: X[[i]]
W = 0.96756, p-value = 0.0002488