dplyr

조건에 맞는 데이터 추출하기 filter

R
데이터 분석을 하다 보면 특정 조건에 맞는 데이터들을 따로 추출하여 분석을 해야 하는 경우가 있습니다. 예를 들면 여성만 추출하여 분석하거나 연령이 30대 이상인 경우만을 추출하여 분석해야 하는 경우가 있습니다. dplyr 패키지의 filter() 함수를 사용하면 편리합니다. 먼저 dplyr 패키지가 포함되어 있는 tidyverse 패키지를 로드 하겠습니다. library(tidyverse) 예시에 사용할 데이터는 starwars입니다. starwars 데이터는 dplyr 패키지에 포함되어 있는 데이터로서 영화 스타워즈 등장인물에 대한 정보(이름, 키, 몸무게 등)를 담고 있습니다. glimpse(starwars) ## Rows: 87 ## Columns: 14 ## $ name <chr> "Luke Skywalker", "C-3PO", "R2-D2", "Darth Vader", "Leia Or~ ## $ height <int> 172, 167, 96, 202, 150, 178, 165, 97, 183, 182, 188, 180, 2~ ## $ mass <dbl> 77.

기존 변수 값을 새 변수 값으로 변경하기 recode()

R
기존 변수 값을 새 변수 값으로 변경하는 방법으로 dplyr 패키지는 몇 가지 함수를 제공하고 있습니다. 참고로 dplyr 패키지는 tidyverse 패키지에 포함되어 있습니다. mutate() 함수 case_when() 함수 recode() 함수 if_else() 함수 이 글에서는 recode() 함수를 이용하는 방법을 중심으로 설명하겠습니다. recode() 함수는 기존의 값을 새로운 값으로 변경하는 역할을 하는 함수입니다. 주로 기존 변수의 특정 값을 새로운 값으로 변경할 때 많이 사용합니다. recode() 함수의 기본 사용법은 다음과 같습니다. recode(기존변수, 기존값1 = "새값1", 기존값2 = "새값2" ) recode() 함수의 이러한 특성때문에 mutate() 함수와 같이 사용한다면 기존 변수에서 새로운 변수를 만들 수 있습니다.

기존 변수에서 새 변수 만들기 case_when()

R
기존 변수에서 새로운 변수를 만드는 방법으로 dplyr 패키지는 몇 가지 함수를 제공하고 있습니다. 참고로 dplyr 패키지는 tidyverse 패키지에 포함되어 있습니다. mutate() 함수 case_when() 함수 recode() 함수 if_else() 함수 이 글에서는 case_when() 함수를 이용하는 방법을 중심으로 설명하겠습니다. case_when() 함수의 기본 사용법은 다음과 같습니다. 새로운 변수를 만들려면 mutate() 함수와 같이 사용하여야 합니다. library(tidyverse) df %>% mutate(새변수 = case_when(기존변수 < 30 ~ "낮음", 기존변수 < 60 ~ "중간", TRUE ~ "높음")) 위 구문에서 TRUE는 앞의 조건들에 맞지 않는 나머지를 의미합니다.