R語言-T檢驗、秩和檢驗、百分比檢驗、卡方檢驗

T檢驗與秩和檢驗

T檢驗:符合正態(tài)分布的數(shù)據(jù)用T檢驗
秩和檢驗:不滿足正態(tài)分布的數(shù)據(jù)用秩和檢驗

正態(tài)分布的檢驗

##生成正態(tài)分布的隨機1000個數(shù)
data=rnorm(1000)
data
#畫柱形圖
hist(data,prob=T)
#畫分布密度的線
lines(density(data))

##檢驗是否符合正太分布。P值>0.05符合正態(tài)分布
shapiro.test(data)
##檢驗是否正太分布輸出圖形,符合對角線為正態(tài)分布
qqnorm(data)
qqline(data)

非正態(tài)分布

#非正態(tài)分布
a=c(rep(1,10),rep(2,5),rep(3,4),6,8,10,12,20)
a
#生成柱形圖
hist(a, breaks = seq(0.5, 21, by = 1),prob = TRUE)
lines(density(a),col="blue")
#畫數(shù)據(jù)密度分布曲線
abline(v=median(a),col="red")
#畫平均線abline中參數(shù)V為垂直線,H為加水平線
abline(v=mean(a),col="green")
#中值
median(a)
#均值
mean(a)
#看是否符合正態(tài)分布
qqnorm(a)
qqline(a)

非正態(tài)分布中值比均值有意義


柱形圖

正態(tài)分布檢驗圖

如果點在直線兩側則為正態(tài)分布。圖示為非正態(tài)分布

秩和檢驗

wilcox.test(變量1,變量2)

#生成非正態(tài)分布的b
b=c(rep(2,7),rep(3,5),rep(5,8),8,10,18,25)
#畫柱形圖
hist(b, breaks = seq(0.5, 26, by = 1),prob = TRUE)
#分別看是否符合正太分布
shapiro.test(a)
shapiro.test(b)
#結果a和b都不符合正態(tài)分布

#誤用T檢驗p值無明顯差別。
t.test(a,b)
#正常應用秩和檢驗P則有明顯差別
wilcox.test(a,b)
##加exact=F則不需要計算精確P值
wilcox.test(a,b, exact=FALSE)

百分比檢驗

prop.test(抽樣陽性, 抽樣總數(shù), p=已知百分比, alternative = "greater")
alternative 參數(shù),假設方向用greater或less,默認雙側檢驗。

##已知全球死亡率10%,調(diào)查400人發(fā)現(xiàn)51死亡,檢驗實際死亡率是否顯著高于全球死亡率
51/400
#百分比檢驗
prop.test(51, 400, p=0.1, alternative = "greater")

卡方檢驗

用于檢驗實際觀測值與理論推斷值之間的偏離程度??ǚ街翟酱笳f明偏離越大,卡方值越小,說明偏離程度低??ǚ街禐?說明完全符合。

data=rbind(c(50,250), c(8,10))
data
mode(data)
rownames(data)=c("non-smoker", "smoker")
colnames(data)=c("disease", "without disease")
data
#卡方檢驗
chisq.test(data)
#樣本太少時會報warnning??梢愿挠胒isher精確檢驗
fisher.test(data)

卡方檢驗比較多組

disease <- rbind(c(20, 40, 20),c(30,30,10))
colnames(disease) <- c("stage1", "stage2", "stage3")
rownames(disease) <- c("Male", "Female")
disease
chisq.test(disease)
實例
?著作權歸作者所有,轉載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

友情鏈接更多精彩內(nèi)容