부런의 부지런한 데이터분석

[R] t.test()에서 '~' 물결, 틸다 의미, factor() 본문

Q&A

[R] t.test()에서 '~' 물결, 틸다 의미, factor()

부런 2023. 4. 11. 04:00

수강 중인 한 과목이 R도 쓰고 Matlab도 쓴다. 근데 둘 다 안 알려주고 냅다 쓰라고 한다... 그래서 기본적인 문법도 잘 몰라서 차근차근 공부하는 중.

 

data에 heights, country 라는 2개의 column들이 있고, country는 1,2로 나뉘어져 있으며, heights에는 사람들의 키가 기록되어 있다. 이러한 데이터를 이용해 나라별로 키 차이가 나는지 아닌지를 t test를 통해 확인하는 과정이다.

#이거는 country별로 나눠서 따로 array 만들어서 한 거고
country1 <- c(data$heights[data$country==1])
country2 <- c(data$heights[data$country==2])
t.test(country1, country2, paired=FALSE, var.equal = TRUE)

처음에 시도한 방법은 country값을 이용해 따로 분리하고, t. test()에 넣는 방법이었는데, 수업자료에 다른 방법이 있어서 그 방법으로 시도해보았다.

 

#이거는 데이터프레임 그대로 살려서 한 것.
#'~' 표시가 a를 b로 test한다는 의미.
#country가 1,2로 표기되어 있어서 numeric -> nominal로 만들어줌
data$country <- factor(data$country)
t.test(data$heights~data$country, paired=FALSE, var.equal=TRUE)

우선 country에 있는 1,2가 numeric으로 되어 있기 때문에 nominal로 만들어주고( factor()), data에 있는 heights를 data에 있는 country로 나눠서 test한다. => 즉, '~' 이 물결 표시는 a~b => a를 b 기준으로 나눠서 test 한다는 의미를 갖고 있다.

Comments