티스토리 뷰

728x90
반응형

 

오늘은 R을 사용한 통계분석 방법 중 One Sample t-test를 공부해 보도록 하겠습니다.

 

데이터는 e-나라지표 홈페이지에서 6학년 학생들의 키를 참고하여 직접 만들어 주었습니다.

아래 데이터를 사용하시면 됩니다.

혹은 직접 데이터를 제작하여도 되고, e-나라 지표 혹은 통계청 등에서 데이터를 가져올 수도 있습니다.

 

ost.csv
0.00MB

 

 


 

1. 데이터 불러오기

우선 read.csv를 사용하여 데이터를 불러오도록 하겠습니다.

불러오는 경로는 각자 저장한 주소에 맞게 변경하면 됩니다.

 

#### 일표본(One Sample) t-test #####

#A초등학교 6학년 학생들의 키 분석을 통한 영양실태조사

# 01.데이터 불러오기 
ost <- read.csv("D:/R 실습/ost.csv", header=TRUE, na.strings = ".")
str(ost)

 

 

일표본이기 때문에 컬럼은 1개만 필요합니다.

데이터가 복잡한 경우라도 컬럼 한 가지만 선택해서 분석을 진행하시면 됩니다.

저는 총 107개의 데이터로 분석을 진행해 보도록 하겠습니다.

 

 

 

 


2. 데이터 확인하기

다음으로 기본 통계치를 확인하기 위해 psych 라이브러리를 사용하도록 하겠습니다.

이때 attach를 해주는 이유는 ost에 있는 height라는 컬럼을 불러올 때 원래 ost$height 로 불러야 하는데 앞에 'ost$' 이 부분을 계속 써주기는 귀찮으니 height 만으로도 데이터를 불러올 수 있도록 해주는 것입니다.

여기서! attach를 써주었으면 코팅이 모두 끝난 후 꼭 detach(ost) 를 해주어야 합니다.

그렇지 않다면 뒤에 계속된 작업에 영향을 줄 수 있습니다.

 

# 02.기본통계치 확인: describe(psych패키지 이용)
attach(ost) # 객체연결 (attach  -> detach)
library(psych)
describe(ost)

 

 

describe 의 결과를 확인해 보면 잘 나온것을 확인 할 수 있습니다.

다음으로 그림을 그려서 데이터를 시각적으로 확인해 보도록 하겠습니다.

 

# 03.그래프 그리기(히스토그램)
hist(height, breaks=10,
     xlab="키", ylab="명", ylim = c(0,40), 
     col = "Cornflower Blue",
     main="A초등학교 6학년학생의 키에 대한 히스토그램 및 정규분포") 

 

그래프
그래프

 

위의 히스토그램처럼 키 분포 별로 몇 명이 분포되어 있는지 확인할 수 있습니다.

 

 

 


3. 통계분석 진행하기

다음으로 통계분석을 진행해 보도록 하겠습니다.

option 값으로 지정해준 이유는 통계분석 결과가 지수형태로 표기되는 걸 일반 소수형태로 표현하기 위함입니다.

mu 값은 전국 6학년 학생들의 표준키 값을 찾아보고 넣어준 것입니다.

 

# 04.통계분석
options("scipen" = 20) #지수 표기법 수정
t.test(ost,
       alternative = c("two.sided"),
       mu = 152.2,
       conf.level = 0.95)

 

결과 값을 보면 p값이 0.05보다 작으므로 귀무가설을 기각하고 대립가설을 채택하게 됩니다.

 

  • 귀무가설 : A초등학교 6학년 학생들의 키는 152.2 cm이다.
  • 대립가설 : A초등학교 6학년 학생들의 키는 152.2 cm가 아니다.

 

 


4. 그래프로 결과 확인하기

마지막으로 통계분석 결과를 그래프로 그려보도록 하겠습니다.

 

# 05.통계결과 그래프
mu=152.2
se=0.55
data <- rnorm(1000, mu, se)
data <- sort(data)
plot(data, dnorm(data, mu, se), type='l', 
     main="6학년 학생의 키(Mu=152.2) 검정", 
     xlim=c(150,154))
abline(v=mu, col="green", lty=5)
abline(v=mu+1.96*se, col="blue", lty=5)
abline(v=mu-1.96*se, col="blue", lty=5)
abline(v=150.44, col="red", lty=5)

그래프
그래프

 

전국 6학년 학생의 키 152.2(녹색)와 5% 오차범위(파란색)보다 A학교 6학년 학생들의 키(빨간색)가 더 작은 것을 시각적으로 확인할 수 있습니다. 

 

 

 

 

728x90
반응형
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2025/07   »
1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31