我有以下問題:在數據框中,我有很多行和列,第一行是日期。對於每個日期我有超過1個觀察,我想總結它們。概述具有不同功能的不同列
我DF看起來像(日期取代ID爲易用性):
df:
ID Cash Price Weight ...
1 0.4 0 0
1 0.2 0 82 ...
1 0 1 0 ...
1 0 3.2 80 ...
2 0.3 1 70 ...
... ... ... ... ...
我想第一列組他們,然後總結所有行,但具有不同的功能:
功能現金和價格應該是總和所以我得到每個ID的現金和價格的總和。 Weight上的功能應該是max,所以我只能得到ID的最大權重。
因爲我有這麼多列,我不能手工寫的所有功能,但我只有2列應由最大其餘應由總和歸納總結。
所以我要尋找的ID的功能組,彙總所有與總和除了我需要最大值2個不同的列。
我試圖與使用dplyr包:
df %>% group_by(ID = tolower(ID)) %>% summarise_each(funs(sum))
但我需要的除了不總結,但最多2個指定的列,任何想法?
要清楚的例子DF的輸出應該是:
ID Cash Price Weight
1 0.6 4.2 82
2 0.3 1 70
做的
謝謝,這似乎工作!除了「重量」之外,是否還有一項補充將** sum **應用於所有列,並且僅將** max **用於「重量」欄和另一個欄?因爲我有90多列,這將是一個痛苦寫:) – Max
@Max這是你可以使用'data.table'完成任務的方式之一 –