的並行版本保存列表名稱時,我想對名單做一些操作,並獲得具有相同名稱作爲結果得到的列表我用sapply功能:使用lapply功能
newList <- sapply(oldList, someFunction, simplify = FALSE,USE.NAMES = TRUE)
是否有可能(以及如何)使用來自apply家族的函數的並行版本來執行相同的操作,例如來自並行軟件包的mclapply?
的並行版本保存列表名稱時,我想對名單做一些操作,並獲得具有相同名稱作爲結果得到的列表我用sapply功能:使用lapply功能
newList <- sapply(oldList, someFunction, simplify = FALSE,USE.NAMES = TRUE)
是否有可能(以及如何)使用來自apply家族的函數的並行版本來執行相同的操作,例如來自並行軟件包的mclapply?
?mclapply
幫助頁面說這是可能的(參數SIMPLIFY
),儘管只適用於mcmapply
。正如你已經知道的那樣,只有一個對象通過的(mc)mapply
是一種特殊情況,相當於(mc)lapply
。
在平行包parSapply功能 - https://stat.ethz.ch/R-manual/R-devel/library/parallel/html/clusterApply.html
library("parallel")
cl <- makeCluster(getOption("cl.cores", 2))
newList <- parSapply(cl, oldList, someFunction, simplify = FALSE,USE.NAMES = TRUE)
據'mclapply',你可以嗎?。 – 2014-11-23 14:47:16
@RomanLuštrik,怎麼樣? – 2014-11-25 16:00:40
請參閱幫助文件。 '...'參數說你可以使用'sapply'的參數。 – 2014-11-25 20:46:39