티스토리 뷰
select()를 이용하여 변수 이름으로 열 선택하기
- select() 함수는 다음처럼 변수 이름을 일일이 나열하여 원하는 열을 선택할 수 있다.
- R의 기본 문법을 알고 있는 사람들은 데이터 프레임의 인덱싱에서처럼 문자열로 이름을 나열하는 것이 아니라 변수를 사용하듯 따옴표 없이 이름을 나열하는 것에 주의한다.
select(데이터프레임, 변수이름1, 변수이름 2, ....)
> exam %>% select(math)
math
1 50
2 60
3 45
4 30
5 25
6 50
7 80
8 90
9 20
10 50
> exam %>% select(math)
math
1 50
2 60
3 45
4 30
5 25
6 50
7 80
8 90
9 20
10 50
> exam %>% select(class, math, english)
class math english
1 1 50 98
2 1 60 97
3 1 45 86
4 1 30 98
5 2 25 80
6 2 50 89
7 2 80 90
8 2 90 78
9 3 20 98
10 3 50 98
> exam %>% select(-math)
id class english science
1 1 1 98 50
2 2 1 97 60
3 3 1 86 78
4 4 1 98 58
5 5 2 80 65
6 6 2 89 98
7 7 2 90 45
8 8 2 78 25
9 9 3 98 15
10 10 3 98 45
# class가 1인 행만 추출한 다음 english 추출
> exam %>% filter(class==1) %>%
+ select(english)
english
1 98
2 97
3 86
4 98
가독성 있게 줄 바꾸기
> exam %>%
+ filter(class==1) %>%
+ select(english)
english
1 98
2 97
3 86
4 98
일분만 출력하기
> exam %>%
+ select(id, math) %>%
+ head()
id math
1 1 50
2 2 60
3 3 45
4 4 30
5 5 25
6 6 50
실습 해 보기
mpg 데이터를 이용한 분석 문제
install.packages("ggplot2") library(ggplot2) ?mpg
Q1. mpg 데이터는 11개 변수로 구성되어 있습니다. 이 중 일부만 추출해서 분석에 활용하려고 합니다. mpg 데이터에서 class(자동차 종류), cty(도시 연비) 변수를 추출해 새로운 데이터를 만드세요. 새로 만든 데이터의 일부를 출력해서 두 변수로만 구성되어 있는지 확인하세요.
mpg <- as.data.frame(ggplot2::mpg)
> mpg_new <- mpg %>%
+ select(class,cty)
> head(mpg_new)
class cty
1 compact 18
2 compact 21
3 compact 20
4 compact 21
5 compact 16
6 compact 18
Q2. 자동차 종류에 따라 도시 연비가 다른지 알아보려고 합니다. 앞에서 추출한 데이터를 이용해서 class(자동차 종류)가 "suv"인 자동차와 "compact"인 자동차 중 어떤 자동차의 cty(도시 연비)가 더 높은지 알아보세요.
mpg_suv <- mpg_new %>%
filter(class=="suv")
mpg_compact <- mpg_new %>%
filter(class=="compact")
> mean(mpg_suv$cty)
[1] 13.5
> mean(mpg_compact$cty)
[1] 20.12766
728x90
반응형
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
반응형