독립표본 t검정
R에서는 t.test()사용
방법 2가지 t.test(data=데이터세트,종속변수~독립변수) t.test(데이터세트\(종속변수~데이터세트\)독립변수)
mpg1 <- read.csv("public_dataset/mpg1.csv",stringsAsFactors = F)
t.test(data=mpg1,cty~trans)
##
## Welch Two Sample t-test
##
## data: cty by trans
## t = -4.5375, df = 132.32, p-value = 1.263e-05
## alternative hypothesis: true difference in means between group auto and group manual is not equal to 0
## 95 percent confidence interval:
## -3.887311 -1.527033
## sample estimates:
## mean in group auto mean in group manual
## 15.96815 18.67532
집단 간 평균 차이 분석을 할 때는 집단의 분산이 같은지를 먼저 분석한 후에 그게 맞춰 평균차이를 검정하는 것
보통 등분산이 아니라는 전제로 검정을 진행하기 때문에 생략하는 경우가 많음
코드 식 var.test(data,종속변수~독립변수)
유의수준(p)>=0.05면 등분산, 유의수준(p)<0.05면 등분산이 아님
t.test()로 분석할 때 등분산인 경우 var.equal=T를 추가하고, 아니면 var.equal=F를 추가
mpg1 <- read.csv("public_dataset/mpg1.csv",stringsAsFactors = F)
table(mpg1$trans,mpg1$drv) #trans와 drv의 교차분석
##
## 4 f r
## auto 75 65 17
## manual 28 41 8
prop.table(table(mpg1$trans,mpg1$drv),1) #auto와 manual의 drv분석
##
## 4 f r
## auto 0.4777070 0.4140127 0.1082803
## manual 0.3636364 0.5324675 0.1038961
chisq.test(mpg1$trans,mpg1$drv)
##
## Pearson's Chi-squared test
##
## data: mpg1$trans and mpg1$drv
## X-squared = 3.1368, df = 2, p-value = 0.2084
mpg1 <- read.csv("public_dataset/mpg1.csv",stringsAsFactors = F)
cor.test(mpg1$cty,mpg1$hwy)
##
## Pearson's product-moment correlation
##
## data: mpg1$cty and mpg1$hwy
## t = 49.585, df = 232, p-value < 2.2e-16
## alternative hypothesis: true correlation is not equal to 0
## 95 percent confidence interval:
## 0.9433129 0.9657663
## sample estimates:
## cor
## 0.9559159
str(mtcars)
## 'data.frame': 32 obs. of 11 variables:
## $ mpg : num 21 21 22.8 21.4 18.7 18.1 14.3 24.4 22.8 19.2 ...
## $ cyl : num 6 6 4 6 8 6 8 4 4 6 ...
## $ disp: num 160 160 108 258 360 ...
## $ hp : num 110 110 93 110 175 105 245 62 95 123 ...
## $ drat: num 3.9 3.9 3.85 3.08 3.15 2.76 3.21 3.69 3.92 3.92 ...
## $ wt : num 2.62 2.88 2.32 3.21 3.44 ...
## $ qsec: num 16.5 17 18.6 19.4 17 ...
## $ vs : num 0 0 1 1 0 1 0 1 1 1 ...
## $ am : num 1 1 1 0 0 0 0 0 0 0 ...
## $ gear: num 4 4 4 3 3 3 3 4 4 4 ...
## $ carb: num 4 4 1 1 2 1 4 2 2 4 ...
lm(mpg~disp,data=mtcars)
##
## Call:
## lm(formula = mpg ~ disp, data = mtcars)
##
## Coefficients:
## (Intercept) disp
## 29.59985 -0.04122
단순 회귀분석은 1차 함수를 구하는 것과 같음
따라 위의 결과를 바탕으로 mpg = 29.59985 - 0.04112*disp를 구할 수 있음
배기량이 1단위 증가할 때마다 mpg는 0.04112씩 감소한다는 의미
유의수준 구하기
summary(lm(mpg~disp,data=mtcars))
##
## Call:
## lm(formula = mpg ~ disp, data = mtcars)
##
## Residuals:
## Min 1Q Median 3Q Max
## -4.8922 -2.2022 -0.9631 1.6272 7.2305
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 29.599855 1.229720 24.070 < 2e-16 ***
## disp -0.041215 0.004712 -8.747 9.38e-10 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 3.251 on 30 degrees of freedom
## Multiple R-squared: 0.7183, Adjusted R-squared: 0.709
## F-statistic: 76.51 on 1 and 30 DF, p-value: 9.38e-10
독립변수가 2개 이상의 복수일 때 사용
독립변수들은 종속변수 뿐만 아니라 서로에게도 영향을 줌
R코드 식 lm(data=데이터세트,종속변수~독립변수1+독립변수2+…) lm(종속변수~독립변수1+독립변수2+…,data=데이터세트) lm(데이터세트\(종속변수~데이터세트\)독립변수1+데이터세트$독립변수2+…)
lm(data=mtcars,mpg~disp+hp+wt)
##
## Call:
## lm(formula = mpg ~ disp + hp + wt, data = mtcars)
##
## Coefficients:
## (Intercept) disp hp wt
## 37.105505 -0.000937 -0.031157 -3.800891
다중회귀식 : mpg = 37.105505-0.000937disp -0.031157hp -3.800891*wt
독립변수들의 회귀계수에 대한 유의수준 계산
RA <- lm(data=mtcars,mpg~disp+hp+wt)
summary(RA)
##
## Call:
## lm(formula = mpg ~ disp + hp + wt, data = mtcars)
##
## Residuals:
## Min 1Q Median 3Q Max
## -3.891 -1.640 -0.172 1.061 5.861
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 37.105505 2.110815 17.579 < 2e-16 ***
## disp -0.000937 0.010350 -0.091 0.92851
## hp -0.031157 0.011436 -2.724 0.01097 *
## wt -3.800891 1.066191 -3.565 0.00133 **
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 2.639 on 28 degrees of freedom
## Multiple R-squared: 0.8268, Adjusted R-squared: 0.8083
## F-statistic: 44.57 on 3 and 28 DF, p-value: 8.65e-11