如何按R中的組計算訂單統計信息我想根據列彙總結果,然後每個組只返回1行。根據某種順序,該行應該是該組的第n個元素。理想情況下,我只想使用基函數。如何在R中按組創建訂單統計?
x <- data.frame(Group=c("A","A", "A", "C", "C"),
Name=c("v", "u", "w", "x", "y"),
Quantity=c(3,3,4,2,0))
> x
Group Name Quantity
1 A v 3
2 A u 3
3 A w 4
4 C x 2
5 C y 0
我想根據數量和名稱的順序取第n位。對於N = 2這是
Group Name Quantity
1 A u 3
5 C y 0
For N=1
Group Name Quantity
3 A w 4
4 C x 2
我試過以下,但我得到一個無形的錯誤消息。
aggregate.data.frame(x, list(x$Group), function(y){ max(y[,'Quantity'])})
Error in `[.default`(y, , "Quantity") (from #1) : incorrect number of dimensions"
我認爲你的'N'和'等級'應該同意。 'x [ranking == 2,] $ Name'根據需要返回c('v','y')'而不是'c('u','y')'。起初,我陷入了同樣的陷阱。 –
@MatthewLundberg良好的呼叫:) thx –
通過編輯,您將獲取每個組內的「Name」的最小值,這對於示例來說恰好是正確的,因爲rank中只有一個「Name」值1例,但一般不正確。 –