2つの列の値に従ってデータフレームを要約したいのですが、実際には各列に同じ変数がありますが、注文です。ここではサンプルデータフレームである:dplyr :: group_by同じ変数の2つの列、順序は関係ありません
> df<-data.frame(val1=c(1,1,1,2,2), val2=c(1,2,2,1,1), val3=c(10, 20, 30, 40, 50))
> df
val1 val2 val3
1 1 1 10
2 1 2 20
3 1 2 30
4 2 1 40
5 2 1 50
私は私だけval1
とval2
の順不同組み合わせを気以外val3
上で要約に興味があります。だから、例えば私は、列ごとのグループにdplyr使用して、次のようにまとめることができ
val1 val2 val3
1 1 2 20
同じ
val1 val2 val3
1 2 1 40
として扱いたい:
> df %>% group_by(val1, val2) %>% summarize(mean=mean(val3))
Source: local data frame [3 x 3]
Groups: val1 [?]
val1 val2 mean
<dbl> <dbl> <dbl>
1 1 1 10
2 1 2 25
3 2 1 45
しかし、私はこの結果にしたいです2行しか含んでいません!
私はval1
とval2
の組み合わせを反映する新しい変数を作成し、それをグループ化することを考えましたが、これを簡単に理解することはできません。 val1
とval2
は数値である必要はなく、常に連続した整数であるとは限りません。
関連項目:http://stackoverflow.com/q/15495795/ http://stackoverflow.com/q/15495795// – Frank