Dplyr을 사용하여 행을 삭제하는 방법(예제 포함)
dplyr을 사용하여 R의 데이터 프레임에서 행을 제거하려면 다음 기본 구문을 사용할 수 있습니다.
1. NA가 있는 행을 삭제합니다.
df %>%
n / A. omit ()
2. 특정 열에서 NA가 있는 행을 삭제합니다.
df %>% filter( ! is. na (column_name))
3. 중복 제거
df %>%
distinct()
4. 인덱스 위치별로 행 삭제
df %>% filter( ! row_number() %in% c(1, 2, 4))
5. 조건에 따라 행 삭제
df %>%
filter(column1 == ' A ' | column2 > 8)
다음 예에서는 다음 데이터 프레임에서 이러한 각 방법을 실제로 사용하는 방법을 보여줍니다.
library (dplyr)
#create data frame
df <- data. frame (team=c('A', 'A', 'B', 'B', 'C', 'C'),
points=c(4, NA, 7, 5, 9, 9),
assists=c(1, 3, 5, NA, 2, 2))
#view data frame
df
team points assists
1 to 4 1
2 A NA 3
3 B 7 5
4 B 5 NA
5 C 9 2
6 C 9 2
예시 1: NA가 있는 행 삭제
다음 코드는 데이터 프레임에서 NA 값을 포함하는 행을 제거하는 방법을 보여줍니다.
#remove any row with NA df %>% n / A. omit () team points assists 1 to 4 1 3 B 7 5 5 C 9 2 6 C 9 2
예 2: 특정 열에서 NA가 있는 행 삭제
다음 코드는 특정 열에서 NA 값이 포함된 행을 삭제하는 방법을 보여줍니다.
#remove any row with NA in 'points' column: df %>% filter( ! is. na (dots)) team points assists 1 to 4 1 2 B 7 5 3 B 5 NA 4 C 9 2 5 C 9 2
예시 3: 중복 행 제거
다음 코드는 중복 행을 제거하는 방법을 보여줍니다.
#remove duplicate rows
df %>%
distinct()
team points assists
1 to 4 1
2 A NA 3
3 B 7 5
4 B 5 NA
5 C 9 2
예시 4: 인덱스 위치별로 행 삭제
다음 코드는 인덱스 위치에 따라 행을 삭제하는 방법을 보여줍니다.
#remove rows 1, 2, and 4 df %>% filter( ! row_number() %in% c(1, 2, 4)) team points assists 1 B 7 5 2 C 9 2 3 C 9 2
예시 5: 조건에 따라 행 삭제
다음 코드는 특정 조건에 따라 행을 삭제하는 방법을 보여줍니다.
#only keep rows where team is equal to 'A' or points is greater than 8 df %>% filter(column1 == ' A ' | column2 > 8) team points assists 1 to 4 1 2 A NA 3 3 C 9 2 4 C 9 2
추가 리소스
다음 튜토리얼에서는 dplyr에서 다른 일반적인 기능을 수행하는 방법을 설명합니다.
dplyr을 사용하여 인덱스로 열을 선택하는 방법
dplyr을 사용하여 그룹별로 변수를 정렬하는 방법
dplyr에서 NA를 0으로 바꾸는 방법