我希望能够暂时将data.frame
的列分配给函数中的变量名。
mydata <- data.frame(a1="hello",a2=2,a3=3)
f <- function(mydata) {
for (i in names(mydata)) assign(i, tempdata[i])
print(a1)
print(a2+a3)
}
[1] "hello"
[2] 5
谢谢,我知道这是另一个奇怪的问题,但它会有所帮助。
答案 0 :(得分:1)
我对发布此内容犹豫不决,但您的评论对于解释您要实现的内容并不是特别有用,而且这似乎与您问题中f
函数的功能相匹配。
with
函数可以让您将列名引用为变量:
with(mydata, {
print(a1)
print(a2 + a3)
})
# [1] hello
# Levels: hello
# [1] 5