A: row.names 속성을 사용하여 데이터 프레임을 정렬하는 방법


row.names 속성을 사용하여 R에서 데이터 프레임을 정렬하려면 다음 두 가지 방법을 사용할 수 있습니다.

방법 1: row.names 문자를 사용하여 정렬

 df[order( row.names (df)), ]

방법 2: 숫자 row.name을 사용하여 정렬

 df[order(as. numeric (row. names (df))), ]

다음 예에서는 각 방법을 실제로 사용하는 방법을 보여줍니다.

예 1: 문자 행 이름을 사용하여 데이터 프레임 정렬

R에 다음과 같은 데이터 프레임이 있다고 가정합니다.

 #create data frame
df <- data. frame (position=c('G', 'G', 'F', 'F', 'C'),
                 points=c(99, 90, 86, 88, 95),
                 assists=c(33, 28, 31, 39, 34),
                 rebounds=c(30, 28, 24, 24, 28))

#set row names of data frame
row. names (df) <- c('A', 'C', 'E', 'D', 'B')

#view data frame
df

  position points assists rebounds
GA 99 33 30
CG 90 28 28
EF 86 31 24
FD 88 39 24
BC 95 34 28

row.names 속성을 사용하여 데이터 프레임의 행을 알파벳순으로 정렬하려면 다음 구문을 사용할 수 있습니다.

 #sort rows alphabetically using row.names
df[order( row.names (df)), ]

  position points assists rebounds
GA 99 33 30
BC 95 34 28
CG 90 28 28
FD 88 39 24
EF 86 31 24

행 이름 값을 기준으로 행이 A부터 Z까지 정렬됩니다.

또한 내림차순=TRUE 인수를 사용하여 Z에서 A로 정렬할 수도 있습니다.

 #sort rows from Z to A using row.names
df[order(row. names (df), decreasing= TRUE ), ]

  position points assists rebounds
EF 86 31 24
FD 88 39 24
CG 90 28 28
BC 95 34 28
GA 99 33 30

예 2: 숫자 행 이름을 사용하여 데이터 프레임 정렬

R에 다음과 같은 데이터 프레임이 있다고 가정합니다.

 #create data frame
df <- data. frame (position=c('G', 'G', 'F', 'F', 'C'),
                 points=c(99, 90, 86, 88, 95),
                 assists=c(33, 28, 31, 39, 34),
                 rebounds=c(30, 28, 24, 24, 28))

#set row names of data frame
row. names (df) <- c(1, 100, 4, 12, 19)

#view data frame
df

    position points assists rebounds
1G 99 33 30
100G 90 28 28
4 F 86 31 24
12 F 88 39 24
19 C 95 34 28

row.names 속성을 사용하여 데이터 프레임의 행을 정렬하려면 다음 구문을 사용할 수 있습니다.

 #sort by row names from smallest to largest
df[order(as. numeric (row. names (df))), ]

    position points assists rebounds
1G 99 33 30
4 F 86 31 24
12 F 88 39 24
19 C 95 34 28
100G 90 28 28

또한 내림차순=TRUE를 사용하여 가장 큰 것부터 가장 작은 것까지 정렬할 수도 있습니다.

 #sort by row names from largest to smallest
df[order(as. numeric (row. names (df)), decreasing= TRUE ), ]

    position points assists rebounds
100G 90 28 28
19 C 95 34 28
12 F 88 39 24
4 F 86 31 24
1G 99 33 30

추가 리소스

다음 튜토리얼에서는 R에서 다른 일반적인 작업을 수행하는 방법을 설명합니다.

R에서 sort(), order() 및 Rank()를 사용하는 방법
R에서 여러 열을 기준으로 정렬하는 방법
R에서 날짜별로 데이터 프레임을 정렬하는 방법

의견을 추가하다

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