R에서 줄을 정렬하는 방법


종종 R에서 데이터 프레임의 행을 특정 순서로 정렬하고 싶을 수도 있습니다. 다행스럽게도 dplyr 라이브러리의 배열() 함수를 사용하면 이 작업을 쉽게 수행할 수 있습니다.

이 튜토리얼에서는 다음 데이터 프레임을 사용하여 이 기능을 실제로 사용하는 몇 가지 예를 설명합니다.

 #create data frame
df <- data.frame(player = c('A', 'B', 'C', 'D', 'E', 'F', 'G'),
                 points = c(12, 14, 14, 15, 20, 18, 29),
                 assists = c(3, 5, 7, 8, 14, NA, 9))

#view data frame 
df

  player points assists
1 to 12 3
2 B 14 5
3 C 14 7
4 D 15 8
5 E 20 14
6 F 18 NA
7 G 29 9

예시 1: 열을 기준으로 구성

다음 코드는 “포인트” 열의 값을 기준으로 데이터 프레임을 오름차순으로 정렬하는 방법을 보여줍니다.

 library(dplyr)

df %>% arrange(points)

  player points assists
1 to 12 3
2 B 14 5
3 C 14 7
4 D 15 8
5 F 18 NA
6 E 20 14
7 G 29 9

내림차순으로 정렬하려면 desc() 함수를 사용하면 됩니다.

 df %>% arrange( desc (dots))

  player points assists
1 G 29 9
2 E 20 14
3 F 18 NA
4 D 15 8
5 B 14 5
6 C 14 5
7 to 12 3

NA는 오름차순 또는 내림차순 정렬 여부에 관계없이 끝까지 정렬됩니다.

 df %>% arrange(assists)

  player points assists
1 to 12 3
2 B 14 5
3 C 14 7
4 D 15 8
5 G 29 9
6 E 20 14
7 F 18 NA

df %>% arrange( desc (assists))

  player points assists
1 E 20 14
2 G 29 9
3 D 15 8
4 C 14 7
5 B 14 5
6 to 12 3
7 F 18 NA

예 2: 여러 열에 걸쳐 정렬

여러 열에 걸쳐 행을 정렬하려면 더 많은 열 이름을 인수로 제공하면 됩니다.

 #sort by points, then assists
df %>% arrange(points, assists)

  player points assists
1 to 12 3
2 B 14 5
3 C 14 7
4 D 15 8
5 F 18 NA
6 E 20 14
7 G 29 9

오름차순 열과 내림차순 열로 행을 구성할 수도 있습니다.

 #sort by points ascending, then assists descending
df %>% arrange(points, desc (assists))

  player points assists
1 to 12 3
2 C 14 7
3 B 14 5
4 D 15 8
5 F 18 NA
6 E 20 14
7 G 29 9

예 3: 사용자 지정 순서로 행 정렬

때로는 사용자 정의 순서로 행을 정렬하고 싶을 수도 있습니다. 특정 수준의 요인을 사용하면 쉽게 이 작업을 수행할 수 있습니다.

 #sort by player with custom order
df %>% arrange( factor (player, levels = c('D', 'C', 'A', 'B', 'E', 'F', 'G')))

  player points assists
1 D 15 8
2 C 14 7
3 to 12 3
4 B 14 5
5 E 20 14
6 F 18 NA
7 G 29 9

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

의견을 추가하다

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