【R】快速實現統計推斷

    如君願,開門見山,直入主題吧!

1 t檢驗

1.1 單樣本t檢驗

對總體均值的假設檢驗
    單樣本 t 檢驗是最基礎的假設檢驗,利用來自總體的樣本數據,推斷總體均值於假設的檢驗值之間是否存在顯著差異,是對總體均值的假設檢驗。
    四步驟:
    1、原假設:總體均值 = U0 ; 備擇假設:總體均值 != U0。
    2、計算樣本均值、標準差。
    3、計算 t 統計量、P值。
    4、根據P值,做出決策。

#R實現:
##單樣本t檢驗
>t.test(rate,mu=0.1)#總體均值=0.1

One Sample t-test

data: rate
t = 2.9812, df = 149, p-value = 0.003355
alternative hypothesis: true mean is not equal to 0.1
95 percent confidence interval:
0.1033923 0.1167297
sample estimates:
mean of x
0.110061

    P值很小,沒有理由接受原假設,即該樣本不是出自均值爲0.1的總體,OK。

1.2 雙樣本t檢驗

用於檢驗某二分類變量區分下的某連續變量的差異是否顯著
    雙樣本 t 檢驗需要滿足獨立、同方差、正態分佈。所以需要先進性方差齊性檢驗。那麼雙樣本 t 檢驗步驟:
    1、計算兩組樣本數據均值。
    2、方差齊性檢驗。
    3.1、方差齊性:進行方差齊性的雙樣本 t 檢驗。
    3.2、方差不齊性:進行方差不齊性的雙樣本 t 檢驗。
方差齊性檢驗

> var.test(avg_exp~gender)

F test to compare two variances

data: avg_exp by gender
F = 0.86857, num df = 49, denom df = 19, p-value = 0.6702
alternative hypothesis: true ratio of variances is not equal to 1
95 percent confidence interval:
0.3779117 1.7529818
sample estimates:
ratio of variances
0.868572

    p-value = 0.6702,顯然,變量 gender 的兩個組間與avg_exp 的方差是相同的。

雙樣本 t 檢驗

> t.test(avg_exp~gender,var.equal=T)

Two Sample t-test

data: avg_exp by gender
t = -1.7429, df = 68,p-value = 0.08587
alternative hypothesis: true difference in means is not equal to 0
95 percent confidence interval:
-435.04352 29.39192
sample estimates:
mean in group 0 mean in group 1
925.7052 1128.5310

    p-value = 0.08587,顯然,變量 gender 在avg_exp 上無顯著差異。

2 方差分析

2.1單因素方差分析

用於檢驗某多分類變量區分下的某連續變量的差異是否顯著
    單因素方差分析需要滿足獨立、同方差(組間方差相同)、正態分佈。所以需要先進性方差齊性檢驗。那麼單因素方差分析檢驗步驟:
    1、計算兩組樣本數據均值。
    2、方差齊性檢驗。
    3.1、方差齊性:進行方差齊性的單因素方差分析檢驗。
    3.2、方差不齊性:進行方差不齊性的單因素方差分析檢驗。
方差齊性檢驗

> bartlett.test(avg_exp~edu_class,data = creditcard_exp)

Bartlett test of homogeneity of variances
data: avg_exp by edu_class
Bartlett’s K-squared = 23.9, df = 3, p-value = 2.62e-05

p-value = 2.62e-05,顯然,變量 edu_class的各個組間與avg_exp的方差是不相同的。

> oneway.test(avg_exp~edu_class,var.equal=F)#不齊性var.equal=F

One-way analysis of means (not assuming equal variances)
data: avg_exp and edu_class
F = 61.086, num df = 3.0000, denom df = 7.5956, p-value = 1.141e-05

     p-value = 1.141e-05,顯然,edu_class的不同類別影響avg_exp。

2.2多因素方差分析

用於檢驗某多個分類變量區分下的某連續變量的差異是否顯著 ,還需要考慮交互效應

2.2.1無交互效應

> ana<-lm(avg_exp~edu_class+gender)
> summary(ana)

Call:
lm(formula = avg_exp ~ edu_class + gender)

Residuals:
Min 1Q Median 3Q Max
-574.71 -156.71 -48.62 142.11 1039.29

Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) 207.37 207.09 1.001 0.320381
edu_class1 439.60 216.03 2.035 0.045947 *
edu_class2 786.06 217.83 3.609 0.000599 ***
edu_class3 1241.19 219.56 5.653 3.79e-07 ***
gender1 -57.82 82.84 -0.698 0.487708

Signif. codes: 0 ‘’ 0.001 ‘’ 0.01 ‘’ 0.05 ‘.’ 0.1 ‘ ’ 1

Residual standard error: 292.9 on 65 degrees of freedom
Multiple R-squared: 0.5943, Adjusted R-squared: 0.5693
F-statistic: 23.81 on 4 and 65 DF, p-value: 3.75e-12

    在R語言中,對於分類變量會自動轉換爲虛擬變量,並自動將先出現的類別作爲參照水平。顯然,gender1變量的P = 0.487708,edu_class變量的非參照水平對其參照水平有顯著差異,而對gender沒顯著差異。

2.2.1交互效應

> ana<-lm(avg_exp~edu_class+gender+edu_class*gender)
> summary(ana)

Call:
lm(formula = avg_exp ~ edu_class + gender + edu_class * gender)

Residuals:
Min 1Q Median 3Q Max
-448.26 -138.18 -45.72 107.14 1165.74

Coefficients: (1 not defined because of singularities)
Estimate Std. Error t value Pr(>|t|)
(Intercept) 207.4 200.1 1.037 0.30391
edu_class1 417.8 209.4 1.996 0.05031 .
edu_class2 732.3 213.0 3.438 0.00104 **
edu_class3 1346.6 216.1 6.232 4.27e-08 ***
gender1 -289.7 121.1 -2.391 0.01980 *
edu_class1:gender1 482.4 241.9 1.994 0.05046 .
edu_class2:gender1 386.5 173.3 2.231 0.02926 *
edu_class3:gender1 NA NA NA NA

Signif. codes: 0 ‘’ 0.001 ‘’ 0.01 ‘’ 0.05 ‘.’ 0.1 ‘ ’ 1

Residual standard error: 282.9 on 63 degrees of freedom
Multiple R-squared: 0.6331, Adjusted R-squared: 0.5981
F-statistic: 18.12 on 6 and 63 DF, p-value: 4.352e-12

     顯然,加入交互項後,變量之間的差異顯著性發生了部分變化。

3 相關分析(兩個連續變量關係檢驗)

對於相關分析,就比較直接了,通常是用散點圖來查看連續變量間的兩兩相關性。相關係數的選取也相對重要。

> scatterplotMatrix(~avg_exp+Age+Income+dist_home_val+dist_avg_income|gender
+                   ,data=creditcard_exp,main="貸款違約數據散點圖矩陣")

在這裏插入圖片描述

4 卡方檢驗(兩個二分類變量關係檢驗)

     通過互聯表,列聯表,卡方檢驗,實現對兩個二分類變量的關係檢驗。卡方檢驗只能檢驗兩分類變量是否有關係,而不能得到關係強弱。

> chisq.test(x=bankruptcy_ind,y=bad_ind)

Pearson’s Chi-squared test

data: bankruptcy_ind and bad_ind
X-squared = 34.012, df = 2, p-value = 4.115e-08

     p-value = 4.115e-08,顯然,檢驗的兩個二分類變量是有關的。

5 總結

    那麼什麼樣的數據選擇什麼樣的假設檢驗才能得到對的決策?落花生總結得到這樣一個表:
在這裏插入圖片描述
    通過R快速實現統計推斷,以及不同的變量選擇什麼檢驗方法,就到這裏來,希望對你有幫助,也方便自己下次複習,謝謝~~~

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章