Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/66.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何将predict()与newdata=var_i一起使用?_R_Prediction - Fatal编程技术网

如何将predict()与newdata=var_i一起使用?

如何将predict()与newdata=var_i一起使用?,r,prediction,R,Prediction,我处理的是一个大数据,我将其分为若干块,这样它就可以由ram管理,比如: (这是一个例子,我有更多的块) var_1使用get()。下面是一个简单的例子: x <- 1:100 x_1 <- x[1:50] x_2 <- x[51:100] for(i in 1:2){ var <- sprintf('x_%i',i) print(sum(get(var))) } 有关详细信息,请参见?get。使用get()执行此操作。下面是一个简单的例子: x <

我处理的是一个大数据,我将其分为若干块,这样它就可以由ram管理,比如: (这是一个例子,我有更多的块)

var_1使用
get()。下面是一个简单的例子:

x <- 1:100

x_1 <- x[1:50]
x_2 <- x[51:100]

for(i in 1:2){
  var <- sprintf('x_%i',i)
  print(sum(get(var)))
}

有关详细信息,请参见
?get

使用
get()
执行此操作。下面是一个简单的例子:

x <- 1:100

x_1 <- x[1:50]
x_2 <- x[51:100]

for(i in 1:2){
  var <- sprintf('x_%i',i)
  print(sum(get(var)))
}


有关更多详细信息,请参见
?get

使用单独的环境来保存块,而不是使用
get
(虽然
get
是这里的简单答案,也是常见问题7.21的一部分),可能会更干净一些

可能对代码进行的修改:

myenv <- new.env()

for (i in 1:n_chunks) {
  name<-sprintf('var_%i',i); path<-sprintf('~/var_%i.Rdata',i)
  load(path, env=myenv)
  predicted     <- predict(Model, newdata =myenv[[name]], type = "prob")
  value         <- as.numeric(lapply(predicted,"[[",2))
  namef         <- sprintf('~/predicted%i.Rdata',i)
  save(value,file=namef)
  rm(list= ls(env=myenv), envir=myenv)
}

myenv使用单独的环境来保存块而不是使用
get
(虽然
get
是这里的简单答案,也是常见问题解答7.21的一部分),可能会更干净一些

可能对代码进行的修改:

myenv <- new.env()

for (i in 1:n_chunks) {
  name<-sprintf('var_%i',i); path<-sprintf('~/var_%i.Rdata',i)
  load(path, env=myenv)
  predicted     <- predict(Model, newdata =myenv[[name]], type = "prob")
  value         <- as.numeric(lapply(predicted,"[[",2))
  namef         <- sprintf('~/predicted%i.Rdata',i)
  save(value,file=namef)
  rm(list= ls(env=myenv), envir=myenv)
}

myenv使用
newdata=get(name)
-这可能行得通。很简单,谢谢它成功了:)使用
newdata=get(name)
-这可能行得通。很简单,谢谢它成功了:)
myenv <- new.env()

for (i in 1:n_chunks) {
  name<-sprintf('var_%i',i); path<-sprintf('~/var_%i.Rdata',i)
  load(path, env=myenv)
  predicted     <- predict(Model, newdata =myenv[[name]], type = "prob")
  value         <- as.numeric(lapply(predicted,"[[",2))
  namef         <- sprintf('~/predicted%i.Rdata',i)
  save(value,file=namef)
  rm(list= ls(env=myenv), envir=myenv)
}