/ /各グループ内の列を並べ替える - r

各グループ内で列を並べ替える - r

私はこのような大きなデータセットを持っています:

 df <- data.frame(group = c(rep(1, 3), rep(5, 3)), member = c(30, 10, 22, 21, 44, 15))

group member
1     30
1     10
1     22
5     21
5     44
5     15

...

私は各グループ内のメンバーを注文したい。予想される出力は次のようになります。

 group member
1     10
1     22
1     30
5     15
5     21
5     44

...

誰もがこれを実現するためのアイデアを持っていますか?

回答:

回答№1は1

"with"関数を使用することができます。最初の引数はデータフレームであり、2番目の引数は、変数 "グループ"、次に変数 "メンバ"による順序で行います。

df[with(df,order(group,member)),]

回答№2の場合は0

使用してみてください ddply plyrパッケージから

> library(plyr)
> ddply(df, .(group), mutate, member=sort(member))
group member
1     1     10
2     1     22
3     1     30
4     5     15
5     5     21
6     5     44