2015-10-13 64 views
1

我想根據列值對列表進行分組和減少列表。基於列值的組和減少列表

這裏是一個非常簡單的例子。該解決方案應該最好在基礎R,不應該包括直接參考列name中的字母,因爲我在那裏有更多的variables

l <- list(data.frame(name=c("X"),price=1), data.frame(name=c("X"),price=1.2), data.frame(name=c("X"),price=2.2), data.frame(name=c("Y"),price=2.5)) 

所需的輸出:

[[1]] 
    name price 
1 X  1 
2 X 1.2 
3 X 2.2 
[[2]] 
    name price 
1 Y 2.5 

回答

1

我們所說的 '名稱' 列

d1 <- do.call(rbind, l) 
split(d1, d1$name) 
+0

哦,我減少了我的實際問題,所以rbindlist元素,然後split輸出data.frame,現在它並不代表我實際需要的東西。但是,這是提供問題的正確解決方案。我會發佈一個新的:)謝謝 – Maximilian

+0

@Maximilian你可以用一個新的例子/期望的輸出更新帖子,如果這是相關的 – akrun

+0

是的,我會,但我必須先弄清楚,並且可以在今天晚些時候這樣做。 – Maximilian