[問題] 大筆data frame資料的處理
[問題類型]:
效能諮詢(我想讓R 跑更快)
[軟體熟悉度]:
請把以下不需要的部份刪除
使用者(已經有用R 做過不少作品)
[問題敘述]:
將data frame當中重複出現二次以上的資料抓出,並求取某個欄位的平均值
我有一個含有接近四百萬比資料的data frame, 格式大概長這個樣子
ID1 ID2 Name1 Name2 Value
-------------------------------------
m001 g001 mm1 gg1 0.5
m001 g001 mm1 gg1 0.6
m002 g001 mm2 gg1 0.3
m002 g002 mm2 gg2 0.5
m002 g002 mm2 gg2 0.7
m002 g002 mm2 gg2 0.2
m003 g002 mm3 gg2 0.1
.... .... .... ... ...
------------------------------------
我想把當中重複出現二次以上的資料抓出來,並計算value欄位的平均
使得資料變成下面這個樣子
ID1 ID2 Name1 Name2 Value
-------------------------------------
m001 g001 mm1 gg1 0.55
m002 g002 mm2 gg2 0.47
.... .... .... .... ....
-------------------------------------
用過for loop + aggregate, foreach + doParallel以及用Rcpp寫for loop
的方式去處理過,但是實在是相當慢,foreach+doParallel跟Rcpp for的版本
幾乎都跑了接近快12小時, 不知道版上的各位大大有沒有什麼好的建議?
[環境敘述]:
請提供 sessionInfo() 的輸出結果,
裡面含有所有你使用的作業系統、R 的版本和套件版本資訊,
讓版友更容易找出錯誤
[關鍵字]:
data frame, subsetting
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 140.116.215.230
※ 文章網址: https://www.ptt.cc/bbs/R_Language/M.1444295729.A.DD1.html
※ 編輯: Godkin (140.116.215.230), 10/08/2015 17:16:36
→
10/08 17:21, , 1F
10/08 17:21, 1F
→
10/08 17:22, , 2F
10/08 17:22, 2F
→
10/08 17:22, , 3F
10/08 17:22, 3F
→
10/08 17:30, , 4F
10/08 17:30, 4F
→
10/08 17:33, , 5F
10/08 17:33, 5F
推
10/08 17:35, , 6F
10/08 17:35, 6F
→
10/08 17:35, , 7F
10/08 17:35, 7F
推
10/08 17:36, , 8F
10/08 17:36, 8F
→
10/08 17:36, , 9F
10/08 17:36, 9F
→
10/08 18:10, , 10F
10/08 18:10, 10F
討論串 (同標題文章)
以下文章回應了本文:
完整討論串 (本文為第 1 之 2 篇):
R_Language 近期熱門文章
PTT數位生活區 即時熱門文章