①対応のないt検定
ttest 検定したい連続変数名, by(2値変数)
例えば、喫煙(smoke)の有無で収縮期血圧(sbp)に差があるか?
ttest sbp, by(smoke)
②対応のあるt検定
ttest 検定したい連続変数名①=変数名②
例えば、服薬前後の血糖値(glubef, gluaft)に差があるか?
ttest glubef=gluaft
この検定を行うと、diffという項目に、差の平均・SE・SDなどが表示される。
対応のあるt検定は、前後差の平均が0かどうかの検定と同じ。
よって、差を表す変数をgenerate(gen)で作って、それ=0というコマンドでも検定できる。
gen diff=gluaft-glubef
ttest diff=0
③t検定の前提条件と、その確かめ方について
t検定が成り立つには、2つの条件がある。
1)比較群の母集団が正規分布をする
2)比較群が2群の場合には分散が等しいこと(等分散)
さてさてここで復習…分散ってなんだっけ。
分散とは、データのばらつきを表す値。分散は、偏差(個々のデータと平均値との差)の2乗の和を求め、それをデータの総数で割ることによって得られる。復習終わり。
まず、等分散性の検定は、sdtestというコマンドで行う。
sdtest 検定したい連続変数名,by(2値変数)
例:sdtest sbp,by(smoke)
真ん中あたりに検定結果が出てくるが、これはp値が大きい方が良い(等分散でないということが棄却されたことになる=等分散性が示される)、ということに注意。
次に、正規性の確認にはいくつか方法がある。
1)ヒストグラム
histgram 変数名, bin(バーの本数) normal
例えば収縮期血圧の正規性を確認したい⇒histgram sbp, bin(20) normal
2)Q-Q plot
なにそれ?Q-Q plotは、puantile-quantile plot、日本語でいうと分位-分位プロット。分位とは、データがどの位置に分布しているかを相対的に見る数値のこと。2つの分布を縦軸と横軸におき、この2つの分布が同じ確率分布に従うとき、中央の直線に各点が一致する。例えば正規分布を横軸において、縦軸に血圧値の分布をおくと、もし血圧値が正規分布であれば、直線に各点が一致すると。
qnorm sbp
3)統計学的テストを使用した確認
Shapiro-Wilkテスト:swilk 変数名
Skewness-Kurtosisテスト:sktest 変数名
いずれも、p値は大きい方が、正規性が確認された、ということになる、ということに注意。
④t検定が使えないとき(正規分布に従わないデータのとき)=ノンパラメトリック検定を用いる
④-1:対応のないノンパラメトリック検定(Mann-Whitney検定):ranksum
ranksum sbp, by(smoke)
④-2:対応のあるノンパラメトリック検定(Wilcoxonの符号順位検定):signrank
signrank glubef=gluaft