Dplyr에서 na를 0으로 바꾸는 방법
R의 dplyr 패키지를 사용하여 데이터 프레임에서 모든 NA 값을 0으로 바꾸려면 다음 구문을 사용할 수 있습니다.
#replace all NA values with zero df <- df %>% replace(is. na (.), 0)
다음 구문을 사용하여 데이터 프레임의 특정 열에서 NA 값을 바꿀 수 있습니다.
#replace NA values with zero in column named col1 df <- df %>% mutate(col1 = ifelse(is. na (col1), 0, col1))
그리고 다음 구문을 사용하여 데이터 프레임의 여러 열 중 하나에서 NA 값을 바꿀 수 있습니다.
#replace NA values with zero in columns col1 and col2 df <- df %>% mutate(col1 = ifelse(is. na (col1), 0, col1), col2 = ifelse(is. na (col2), 0, col2))
다음 예에서는 다음 데이터 블록에서 이러한 기능을 실제로 사용하는 방법을 보여줍니다.
#create data frame df <- data. frame (player=c('A', 'B', 'C', 'D', 'E'), pts=c(17, 12, NA, 9, 25), rebs=c(3, 3, NA, NA, 8), blocks=c(1, 1, 2, 4, NA)) #view data frame df player pts rebs blocks 1 to 17 3 1 2 B 12 3 1 3 C NA NA 2 4 D 9 NA 4 5 E 25 8 NA
예시 1: 모든 열의 모든 NA 값 바꾸기
다음 코드는 데이터 프레임의 모든 열에 있는 모든 NA 값을 바꾸는 방법을 보여줍니다.
library (dplyr) #replace all NA values with zero df <- df %>% replace(is. na (.), 0) #view data frame df player pts rebs blocks 1 to 17 3 1 2 B 12 3 1 3 C 0 0 2 4 D 9 0 4 5 E 25 8 0
예시 2: 특정 열의 NA 값 바꾸기
다음 코드는 데이터 프레임의 특정 열에서 NA 값을 바꾸는 방법을 보여줍니다.
library (dplyr) #replace NA values with zero in rebs column only df <- df %>% mutate(rebs = ifelse(is. na (rebs), 0, rebs)) #view data frame df player pts rebs blocks 1 to 17 3 1 2 B 12 3 1 3 C NA 0 2 4 D 9 0 4 5 E 25 8 NA
예시 3: 여러 열 중 하나의 NA 값 바꾸기
다음 코드는 데이터 프레임의 여러 열 중 하나에서 NA 값을 바꾸는 방법을 보여줍니다.
library (dplyr) #replace NA values with zero in rebs and pts columns df <- df %>% mutate(rebs = ifelse(is. na (rebs), 0, rebs), pts = ifelse(is. na (pts), 0, pts)) #view data frame df player pts rebs blocks 1 to 17 3 1 2 B 12 3 1 3 C 0 0 2 4 D 9 0 4 5 E 25 8 NA
추가 리소스
dplyr을 사용하여 특정 문자열이 포함된 행을 필터링하는 방법
dplyr을 사용하여 상대 빈도를 계산하는 방법
dplyr을 사용하여 그룹별로 첫 번째 행을 선택하는 방법