我的SparkR程序中有一个gapplyCollect函数,该函数使用get_transition作为其函数。下面的简单示例可以很好地工作(作为起点示例)。
result <- gapplyCollect(dat_spark, "patient_encrypted_id", get_transition)
其中
get_transition <- function(key, x) {
y <- data.frame(key, nrow(x))
colnames(y) <- c("patient ID", "transitions")
y
}
当我尝试执行以下操作时,问题就开始了:
1)将参数从gapplyCollect传递到get_transition
要么
2)从get_transition内部处理全局变量。
在主服务器并行化之后,get_transition函数将在SparkR节点上运行,但是即使如此,我也希望能够在从属节点之间/之间共享信息。我是否错过了共享变量的简便方法?我应该能够将变量传递给gapplyCollect调用的函数,和/或该函数应该能够看到全局变量吗?