如何在环境中以参数作为名称获取函数的输出?
How can i get the output of a function in the environment with an argument as name?
我创建了一个将数据集作为输出的函数。
我想要我的环境中的数据集,但我无法使用参数作为名称来完成它。
myfun <- function(dfname) {
dfname <<- df
}
myfun(df1)
上面的df是在函数中创建的,需要在环境中存储为df1。但是当我 运行 脚本时,df 存储为 "dfname".
是这样的吗?
myfun <- function(dfname) {
#dfname <<- df
return(df)
}
df1 <- myfun(df1)
不推荐这样做,但此代码有效
myfun <- function(dfname) {
assign(dfname, iris, pos = 1)
}
测试:
myfun("dfname")
head(dfname)
Sepal.Length Sepal.Width Petal.Length Petal.Width Species
1 5.1 3.5 1.4 0.2 setosa
2 4.9 3.0 1.4 0.2 setosa
3 4.7 3.2 1.3 0.2 setosa
4 4.6 3.1 1.5 0.2 setosa
5 5.0 3.6 1.4 0.2 setosa
6 5.4 3.9 1.7 0.4 setosa
我创建了一个将数据集作为输出的函数。 我想要我的环境中的数据集,但我无法使用参数作为名称来完成它。
myfun <- function(dfname) {
dfname <<- df
}
myfun(df1)
上面的df是在函数中创建的,需要在环境中存储为df1。但是当我 运行 脚本时,df 存储为 "dfname".
是这样的吗?
myfun <- function(dfname) {
#dfname <<- df
return(df)
}
df1 <- myfun(df1)
不推荐这样做,但此代码有效
myfun <- function(dfname) {
assign(dfname, iris, pos = 1)
}
测试:
myfun("dfname")
head(dfname)
Sepal.Length Sepal.Width Petal.Length Petal.Width Species
1 5.1 3.5 1.4 0.2 setosa
2 4.9 3.0 1.4 0.2 setosa
3 4.7 3.2 1.3 0.2 setosa
4 4.6 3.1 1.5 0.2 setosa
5 5.0 3.6 1.4 0.2 setosa
6 5.4 3.9 1.7 0.4 setosa