如何拆分数据框并在其上并行运行自定义功能?

时间:2016-06-21 08:55:30

标签: r revolution-r parallel-foreach

我有一个大约25L行的大型数据集,其中应用了此功能“status”。这是一个标志性的程序。在fn内部,操作被向量化并且使用应用函数。 c1-c4是我数据中的列。执行fn还需要5-6小时。

{{1}}

有没有办法进一步加快fn。我在一个有16个核心的服务器上工作。所以我相信它可以进一步加快。

1 个答案:

答案 0 :(得分:0)

也许data.table方法比尝试并行化代码要快,但我需要您的数据样本以确保此答案解决您的问题:

library(data.table)

setDT(mydata)

mydata[ RECORD_TYPE != "INPUT", 
                   .(var1 = ifelse (!(any(c2=="BAD")), "G", sum(c2== "BAD")),
                     var2 = sum (c2D== "NEG")), by= c4]