позволяют сказать, что у меня есть окружение с некоторыми объектами:объектов Modify в конкретной среде
myenv=new.env()
x=data.frame(a=c(1:5),b=c(2:6))
y=data.frame(c=c(3:7),d=c(4:8))
assign("x",x,env=myenv)
assign("y",y,env=myenv)
ls(env=myenv)
[1] "x" "y"
я тогда хочу add a column
имя «г» каждое data.frame (х и у) в myenv
. Как я мог это сделать?
Я понимаю, как я могу получить, например, тусклым:
sapply(mget(ls(env=myenv), myenv),dim) ###this way
sapply(ls(env=myenv),function(x) dim(get(x,myenv))) ##or this way
Но не могу понять, как изменить объекты в myenv
.
Это работает, но не так "красивые" решение:
sapply(ls(env=myenv),function(x) {
trying=get(x,myenv)
trying[,"z"]=trying[,2]+trying[,3]
return(trying)
})
С наилучшими пожеланиями
@akrun Извините. Пример игрушки, который был напечатан с моей головы ... Это не проблема в моем «реальном» коде. См. Править выше. – user1665355
@akrun Ваш пример меняет x в моем .GlobalEnv не в 'myenv' :) – user1665355
@akrun Хехе спасибо, но это не решает мой вопрос :) – user1665355