[問題] 把物件存成.RData會比較快嗎?(shinyapp)

看板R_Language作者 (locka)時間6年前 (2019/03/14 22:06), 編輯推噓4(4015)
留言19則, 4人參與, 6年前最新討論串1/1
[問題類型]: 意見調查(我對R 有個很棒的想法,想問問大家的意見) 效能諮詢(我想讓R 跑更快) [軟體熟悉度]: 使用者(已經有用R 做過不少作品) [問題敘述]: 各位版友好,想請問大家開發 shinyapp 的時候會先把資料存成 .RData 再讀取嗎? 例如讀取外部檔案: 原本是在 runApp() 的時候執行 data <- read.csv("xxx.csv") 改成先用 save(data, file="data.RData") 存成 .RData 這樣 runApp() 的時候直接執行 load("data.RData") 又或者, 我有些物件是用 lapply 函數做成的 一樣先存成 .RData 執行 app 的時候直接 load 這樣就不用每次執行程式都要跑一次 lapply 函數 理論上這樣應該會比較快...嗎? 更明確的說,當部屬到 shinyapps.io 上的時候,這樣會不會比較快 不曉得有沒有高手可以指點一下,或是分享自己的經驗。 謝謝! [關鍵字]: shiny, shinyapps.io, RData -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 36.224.193.22 ※ 文章網址: https://www.ptt.cc/bbs/R_Language/M.1552572414.A.F20.html

03/14 22:33, 6年前 , 1F
我覺得就depends on哪個讀取快耶
03/14 22:33, 1F

03/14 22:44, 6年前 , 2F
可以直接測看看時間啊,如果運算很複雜當然load RData快
03/14 22:44, 2F

03/14 22:48, 6年前 , 3F
請問有什麼方法可以協助我判斷讀取時間嗎?好像不能單從檔
03/14 22:48, 3F

03/14 22:48, 6年前 , 4F
案大小來看,我不太曉得shiny讀取外部檔案跟執行函式有沒有
03/14 22:48, 4F

03/14 22:48, 6年前 , 5F
用什麼可能會是瓶頸的方式,比方說如果讀取外部.RData是用s
03/14 22:48, 5F

03/14 22:48, 6年前 , 6F
treaming的方式讀取,那一定就會很慢吧…可是又覺得執行函
03/14 22:48, 6F

03/14 22:48, 6年前 , 7F
式要多做計算很浪費資源…不如事先算好再讀取就好…抱歉,
03/14 22:48, 7F

03/14 22:48, 6年前 , 8F
回覆的有點亂
03/14 22:48, 8F

03/14 23:12, 6年前 , 9F
如涉傳輸就難說了,我都在自架server,not shinyapps.io
03/14 23:12, 9F

03/14 23:19, 6年前 , 10F
即便是自架server,run的時候也是要傳輸不是嗎?
03/14 23:19, 10F

03/14 23:35, 6年前 , 11F
寫在global.R 就會只要讀一次
03/14 23:35, 11F

03/14 23:35, 6年前 , 12F
不就好了嗎?
03/14 23:35, 12F

03/14 23:43, 6年前 , 13F
不管是 lapply(), read.csv() 還是 load() 都是寫在 global
03/14 23:43, 13F

03/14 23:43, 6年前 , 14F
.R 裡喔,我只是在思考前兩者的速度跟後者的速度誰快誰慢?
03/14 23:43, 14F

03/14 23:43, 6年前 , 15F
?
03/14 23:43, 15F

03/15 01:18, 6年前 , 16F
那應該是feather最快
03/15 01:18, 16F

03/17 20:48, 6年前 , 17F
Feather 比 csv txt rdata SQLite 快
03/17 20:48, 17F

03/17 22:42, 6年前 , 18F
感謝兩位分享,第一次聽到 feather 來研究看看!
03/17 22:42, 18F

03/18 22:28, 6年前 , 19F
如果可以接受binary格式,feather, fst都可試看看
03/18 22:28, 19F
文章代碼(AID): #1SYb_-yW (R_Language)
文章代碼(AID): #1SYb_-yW (R_Language)