我有一个data.frame的单元格,值和坐标。它驻留在全球环境中。并行运行时写入全局环境
> head(cont.values)
cell value x y
1 11117 NA -34 322
2 11118 NA -30 322
3 11119 NA -26 322
4 11120 NA -22 322
5 11121 NA -18 322
6 11122 NA -14 322
因为我的自定义函数需要近一个第二计算单个细胞(和我有细胞数以万计的计算),我不想重复那些已经有一个值单元格计算。我的以下解决方案试图避免这一点。每个单元格可以独立计算,尖叫并行执行。
我的功能实际上是做的是检查是否有一个指定的单元格号码的值,如果它是NA,它会计算它并插入它的位置NA。
我可以使用申请家庭的功能和apply
内,我可以读取和写入cont.values
没有问题(这是在全球环境中)运行我的神奇功能(结果是value
了相应cell
)。
现在,我想并行运行这个(使用snowfall
),我无法读取或写入/从这个变量从个别核心。
问题:当并行执行一个函数时,什么解决方案可以从worker/core中的全局环境中读取/写入/写入全局环境中的动态变量。有没有更好的方法来做到这一点?
我可以实现这一些日子,但我目前官方没有访问POSIX型系统(卡在Windows上),这意味着我可以”还没有运行服务器。 – 2011-06-07 08:53:32