Dplyr을 사용하여 값을 다시 코딩하는 방법


때로는 특정 값을 R의 데이터 프레임으로 기록하는 데 관심이 있을 수 있습니다. 다행히 이는 dplyr 패키지의 recode() 함수를 사용하여 쉽게 수행할 수 있습니다.

이 튜토리얼에서는 이 기능의 실제 사용에 대한 몇 가지 예를 보여줍니다.

예시 1: 데이터 프레임의 단일 열 다시 코딩하기

다음 코드는 데이터 프레임의 단일 열을 다시 코딩하는 방법을 보여줍니다.

 library(dplyr)

#create dataframe 
df <- data.frame(player = c('A', 'B', 'C', 'D'),
                 points = c(24, 29, 13, 15),
                 result = c('Win', 'Loss', 'Win', 'Loss'))

#view dataframe 
df

#change 'Win' and 'Loss' to '1' and '0'
df %>% mutate (result=recode(result, ' Win '='1', ' Loss '='0'))

       player points result
1 to 24 1
2 B 29 0
3 C 13 1
4 D 15 0

예 2: 데이터 프레임의 단일 열을 다시 코딩하고 NA 값 제공

다음 코드는 데이터 프레임의 단일 열을 다시 코딩하고 새 값이 명시적으로 할당되지 않은 모든 값에 NA 값을 할당하는 방법을 보여줍니다.

 library(dplyr)

#create dataframe 
df <- data.frame(player = c('A', 'B', 'C', 'D'),
                 points = c(24, 29, 13, 15),
                 result = c('Win', 'Loss', 'Win', 'Loss'))

#view dataframe 
df

#change 'Win' to '1' and give all other values a value of NA
df %>% mutate (result=recode(result, ' Win '='1', .default =NA_character_))

       player points result
1 to 24 1
2 B 29 <NA>
3 C 13 1
4 D 15 <NA>

예시 3: 데이터 프레임의 여러 열을 다시 코딩합니다.

다음 코드는 데이터 프레임에서 한 번에 여러 열을 다시 코딩하는 방법을 보여줍니다.

 library(dplyr)

#create dataframe 
df <- data.frame(player = c('A', 'B', 'C', 'D'),
                 points = c(24, 29, 13, 15),
                 result = c('Win', 'Loss', 'Win', 'Loss'))

#recode 'player' and 'result' columns
df %>% mutate (player=recode(player, ' A '='Z'),
              result=recode(result, ' Win '='1', ' Loss '='0'))

       player points result
1 Z 24 1
2 B 29 0
3 C 13 1
4 D 15 0

recode() 함수에 대한 전체 문서는 여기에서 찾을 수 있습니다.

의견을 추가하다

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다