FUN ='c'或'list'聚合到目前爲止四處搜尋,但沒有運氣。R =
這裏是數據框。
> test = data.frame(x = c(1,1,2,2,3,3), y = c('a','b','c','d','e','f'))
> test
x y
1 1 a
2 1 b
3 2 c
4 2 d
5 3 e
6 3 f
一直在尋找一種方法來聚合,使得y隨相同x值與形成爲一個列表或向量。
喜歡的東西
x y
1 1 a,b
2 2 c,d
3 3 e,f
嘗試「C」,但結果不是預期的
> aggregate(y~x, data = test, FUN = 'c')
x y.1 y.2
1 1 1 2
2 2 3 4
3 3 5 6
名單「似乎工作,但其轉換性格因素,儘管。
> ss = aggregate(y~x, data = test, FUN = 'list')
> class(ss$y[1][[1]])
[1] "factor"
> ss$y[1]
$`1`
[1] a b
Levels: a b c d e f
任何意見表示讚賞,謝謝。
你明白'y'柱開始了作爲一個因素矢量? –
謝謝你提到這一點。這對我來說是新的。 – Chen
如果你想把結果保存爲一個列表,那麼只需在參數中加上= FALSE:'ss = aggregate(y〜x,data = test,FUN ='list',simplify = FALSE)' –