Rの基本:t検定と回帰分析

データの準備と要約

ID <- c(1:10)
治療 <- c("A","A","A","A","A","B","B","B","B","B")
得点 <- c(10, 11, 10, 9, 8, 13, 14, 12, 10, 11)
年齢 <- c(92, 80, 82, 90, 81, 69, 62, 67, 70, 63)
dat <- data.frame(ID, 治療, 得点, 年齢)
print(dat)

治療Aを受けたID1~5、治療Bを受けたID6~10は独立した2群

各郡の要約を見てみます

治療A群

summary(dat[dat$治療=="A", c("得点", "年齢")])

治療B群

summary(dat[dat$治療=="B", c("得点", "年齢")])

箱ひげ図

各治療群の得点比較

boxplot(得点~治療, data=dat)

対応のないt検定

t.test関数(var.equal=T は等分散を仮定する場合に使用)

t.test(得点~治療, data=dat, var.equal=T)

単回帰分析

やり方だけ参考にして、サンプルサイズは無視してください。

fit <- lm(得点~治療, data=dat)
summary(fit)

t値、p値はともにt検定と同じ値になります

年齢で調整

fit2 <- lm(得点~治療+年齢, data=dat)
summary(fit2)

年齢で調整したら、有意な差が認められなくなりました

ChatGPT

最近、また回答の精度が向上してきているような気がします

以下のような質問をChatGPT様に投げてみてください

かなり丁寧に教えてくださいます

ダメ出し 間違い、分かりにくい部分などのご意見をお待ちします

タイトルとURLをコピーしました