質問:
僕は複数の列でdata.frameをソートしたいんだ。たとえば、下のようなデータフレームで、列z
を降順に、列b
を昇順にソートするにはどうしたらいい?:
|
By Christopher DuBois | 質問日時: 2009年8月18日 21:33
回答1:
追加のライブラリとか使わなくてもorder()
関数が使えるよ – example(order)
コードの一番目の例を見れば一発でわかると思う:
|
同じことを列に対してやろうとするなら、ソートしたい列をorder()
関数に渡してやればいい:
|
これは列の名前を使うのよりいい方法だと思う(それをするにはwith()
でやると簡単だと思うけど).
By Dirk Eddelbuettel | 回答日時: 2009年8月18日 21:51
回答2:
君のチョイスはいくつかある:
base
のorder
dplyr
のarrange
data.table
のsetorder
とsetorderv
plyr
のarrange
taRifx
のsort
doBy
のorderBy
Deducer
のsortData
たいていの場合、ライブラリを使っちゃいけない場合とかを除いてdplyr
かdata.table
を使うべきだと思う。もしその場合だったら、base :: order
を使えばいい。
By Ari B. Friedman | 回答日時: 2011年7月29日 10:48
回答3:
他の人がすばらしい答えをしてるけど、個人的にはdplyrが僕がすぐに、そして簡単に覚えられた構文を使ってる(だからよく使う)。
|
OPの問題については:
|
By Ben | 回答日時: 2014年2月18日 21:29