我们如何在DistributedR中将自定义函数作为参数发送给foreach?

时间:2015-08-04 11:50:15

标签: r distributed-computing vertica distributed-r

在R分布式数据帧中,我正在尝试使用时间戳对数据进行子集化,并且在数据帧的子集中,我想填充“NA”。具有特定列的最常值,或者我想使用定义的自定义函数来填充“NA”#

foreach(i, 1:npartitions(testset_dr),
    init<-function(input = splits(testset_dr,i),uniques = uniques,output=splits(filledDF, i), index=i){
      output$hub = 'ga'
      for(i in 1:length(uniques))
      {
        lookup.subset <- subset(input,input$lookup == uniques[i])
        for(j in 1:ncol(lookup.subset)){
          output <- rbind(output,lookup.subset)
        }
      }
      update(output)
    })

数据集如下

ti X1 X2
t1 1  2
t1 2  2
t1 na 1
t1 1  na
t2 1  1
t2 1  1
t2 1  1
t2 na 1

基于t1的子集

t1 1  2
t1 2  2
t1 na 1
t1 1  na

基于t2的子集

t2 1  1
t2 1  1
t2 1  1
t2 na 1

来自两个子集试图用那个列经常出现的值替换NAs

,预期输出为

ti X1 X2
t1 1  2
t1 2  2
t1 1  1
t1 1  2
t2 1  1
t2 1  1
t2 1  1
t2 1  1

0 个答案:

没有答案