[問題] 以r整理大量資料,效能問題

看板R_Language作者 (夏澄)時間7年前 (2017/04/19 15:02), 編輯推噓3(306)
留言9則, 4人參與, 最新討論串1/2 (看更多)
- 問題: 當你想要問問題時,請使用這個類別。 建議先到 http://tinyurl.com/mnerchs 搜尋本板舊文。 [問題類型]: 效能諮詢(我想讓R 跑更快) [軟體熟悉度]: 請把以下不需要的部份刪除 入門(寫過其他程式,只是對語法不熟悉) [問題敘述]: 請簡略描述你所要做的事情,或是這個程式的目的 我有一個約千萬筆的產品交易紀錄 格式長得像下面這樣子 #testdata customerid:AAAAAAAAAA payment:BBBBBBBB ReadTime:CCCCCC 20170419020204PruductNumber:DDDDDD:NT00183.1415Number:40 20170419020205PruductNumber:EEEEEE:NT00184.1415Number:42 20170419020206PruductNumber:FFFFFF:NT00185.1415Number:44 客戶:GGGGGGGGGGG 付款方式:III 讀取時間:JJJJJJ 20170419020204PruductNumber:KKKKKK:NT00040.1610Number:40 20170419020205PruductNumber:EEEEEE:NT00041.1610Number:42 20170419020206PruductNumber:FFFFFF:NT00042.1610Number:44 20170419020207PruductNumber:HHHHHH:NT00043.1610Number:46 我想要整理成 客戶 付款方式 讀取時間 交易時間 產品序號 金額 數量 AAAAAAAAAAA BBBBBB CCCCCC 20170419020204 DDDDDD 00183.1415 40 AAAAAAAAAAA BBBBBB CCCCCC 20170419020205 EEEEEE 00184.1415 42 AAAAAAAAAAA BBBBBB CCCCCC 20170419020206 FFFFFF 00185.1415 44 GGGGGGGGGGG III JJJJJJ 20170419020204 KKKKKK 00040.1610 40 GGGGGGGGGGG III JJJJJJ 20170419020205 EEEEEE 00041.1610 42 GGGGGGGGGGG III JJJJJJ 20170419020206 FFFFFF 00042.1610 44 GGGGGGGGGGG III JJJJJJ 20170419020207 HHHHHH 00043.1610 46 目前程式的雛型是讀入data後用for迴圈跟if和substr判定關鍵字, 再用substr寫入各變數後,利用rbind結合變數輸出。 但是碰到的問題是利用測試資料試跑時(約10000筆)就碰上了效能不佳的問題, 真實資料約1000萬筆,請問有無處理此類資料的套件或是效能較佳的解法呢? 感謝。 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 114.25.9.219 ※ 文章網址: https://www.ptt.cc/bbs/R_Language/M.1492585376.A.957.html

04/19 16:42, , 1F
這種高效能的非結構化資料,只能運用hadoop/spark的map-
04/19 16:42, 1F

04/19 16:42, , 2F
reduce來做了
04/19 16:42, 2F

04/19 16:43, , 3F
「需要高效能的整理非結構化資料的功能」<--我第一句是要
04/19 16:43, 3F

04/19 16:43, , 4F
打這個
04/19 16:43, 4F

04/19 17:03, , 5F
資料大約幾GB? 可以試試看用sapply取代for
04/19 17:03, 5F

04/19 17:03, , 6F
然後再用snow平行去加速
04/19 17:03, 6F

04/19 17:04, , 7F
這算是比較折衷的方法
04/19 17:04, 7F

04/19 17:15, , 8F
c/c++
04/19 17:15, 8F

04/19 20:00, , 9F
試試Microsoft R Open?
04/19 20:00, 9F
文章代碼(AID): #1OzmkWbN (R_Language)
文章代碼(AID): #1OzmkWbN (R_Language)