A: row.names 属性を使用してデータ フレームを並べ替える方法


row.names属性を使用して R でデータのフレームを並べ替えるには、次の 2 つの方法を使用できます。

方法 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 に並べ替えられます。

引数decending=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

また、 decending=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 でデータフレームを日付で並べ替える方法

コメントを追加する

メールアドレスが公開されることはありません。 が付いている欄は必須項目です