2015-06-04 239 views
5

我有一个发亮应用,其中server.R看起来像下面:ř闪亮list2env

shinyServer(function(input, output,session) { 
    temp<-reactive({ 
      obj1<-read.csv(.....) 
      v1<-c("obj2") 
      lst<-lapply(v1,read.csv(....) 
      list2env(lst) 
      ... 
     }) 

我在称为obj1并且还使用list2env创建obj2反应性官能团直接创建一个对象。 obj1obj2都不在相同的环境中。当我处于被动函数中时,我所处的环境是什么? 此外,我不想在list2env中使用.GlobalEnv,因为它可以使所有用户会话都可以使用此对象。如何在与obj1相同的环境中创建list2env创建obj2

+0

完美 - 这工作,谢谢! – Sri

回答

6

environment()函数将返回当前环境。因此,如果你在一个函数中使用它,它将返回函数的环境。然后,您可以使用与

list2env(lst, envir=environment()) 

(虽然我个人总是觉得它更容易将数据保存在一个列表,而不是创建一批环境独立变量。)