Dplyr을 사용하여 그룹별로 행을 구성하는 방법(예제 포함)
다음 방법을 사용하여 dplyr에서 그룹별로 행을 구성할 수 있습니다.
방법 1: 그룹별로 오름차순으로 행 정렬
library (dplyr) #arrange rows in ascending order based on col2, grouped by col1 df %>% group_by(col1) %>% arrange(col2, . by_group = TRUE )
방법 2: 그룹별로 내림차순으로 행 정렬
library (dplyr) #arrange rows in descending order based on col2, grouped by col1 df %>% group_by(col1) %>% arrange( desc (col2), . by_group = TRUE )
방법 3: 여러 그룹으로 줄 구성
library (dplyr) #arrange rows based on col3, grouped by col1 and col2 df %>% group_by(col1, col2) %>% arrange(col3, . by_group = TRUE )
이 튜토리얼에서는 다음 데이터 프레임을 사용하여 실제로 각 방법을 사용하는 방법을 설명합니다.
#create data frame
df <- data. frame (team=c('A', 'A', 'A', 'A', 'B', 'B', 'B', 'B'),
position=c('G', 'G', 'F', 'F', 'G', 'G', 'F', 'F'),
points=c(10, 12, 3, 14, 22, 15, 17, 17))
#view data frame
df
team position points
1 AG 10
2 AG 12
3 AF 3
4 AF 14
5 BG 22
6 BG 15
7 BF 17
8 BF 17
예시 1: 그룹별로 행을 오름차순으로 정렬
다음 코드는 팀 열별로 그룹화된 points를 기준으로 행을 오름차순으로 정렬하는 방법을 보여줍니다.
library (dplyr)
#arrange rows in ascending order by points, grouped by team
df %>%
group_by(team) %>%
arrange(points, . by_group = TRUE )
# A tibble: 8 x 3
# Groups: team [2]
team position points
1 AF 3
2 AG 10
3 AG 12
4 AF 14
5 BG 15
6 BF 17
7 BF 17
8 BG 22
라인은 팀 열별로 그룹화되어 포인트 별로 오름차순(가장 작은 것부터 가장 큰 것까지)으로 나열됩니다.
예시 2: 그룹별로 내림차순으로 행 정렬
다음 코드는 팀 열별로 그룹화된 points를 기준으로 내림차순으로 행을 정렬하는 방법을 보여줍니다.
library (dplyr)
#arrange rows in descending order by points, grouped by team
df %>%
group_by(team) %>%
arrange( desc (dots), .by_group = TRUE )
# A tibble: 8 x 3
# Groups: team [2]
team position points
1 AF14
2 AG 12
3 AG 10
4 AF 3
5 BG 22
6 BF 17
7 BF 17
8 BG 15
행은 팀 열별로 그룹화되어 포인트 별로 내림차순(최대에서 최소)으로 나열됩니다.
예 3: 여러 그룹으로 라인 구성
다음 코드는 팀 및 직책 열별로 그룹화된 points를 기준으로 행을 오름차순으로 정렬하는 방법을 보여줍니다.
library (dplyr)
#arrange rows in descending order by points, grouped by team and position
df %>%
group_by(team, position) %>%
arrange(points, . by_group = TRUE )
# A tibble: 8 x 3
# Groups: team, position [4]
team position points
1 AF 3
2 AF14
3 AG 10
4 AG 12
5 BF 17
6 BF 17
7 BG 15
8 BG 22
라인은 팀 및 위치 열별로 그룹화되어 포인트 별로 오름차순(가장 작은 것부터 가장 큰 것까지)으로 나열됩니다.
추가 리소스
다음 튜토리얼에서는 R에서 다른 일반적인 작업을 수행하는 방법을 설명합니다.
dplyr을 사용하여 고유 값을 필터링하는 방법
dplyr을 사용하여 여러 조건으로 필터링하는 방법
R의 열에서 발생 횟수를 계산하는 방법