我想创建一个非常简单的函数,它占用一个大型数据集(df(的一部分,并在全局环境中使用指定的名称创建一个新的数据集。问题是,它似乎将新的数据帧命名为"数据帧";x〃;而不是实际的字符串输入。示例:
create_dataset<-function(x,rows,columns) {
name<<-df[rows,columns]
}
create_dataset(x="skildpadde",
rows=690:692,
columns=2:7)
我如何使用输入";x〃;作为数据集名称?
使用get()
:
create_dataset<-function(x,rows,columns) {
get(x)[rows,columns]
}
或者,如果您试图在全局环境中分配给x
:
create_dataset<-function(x,rows,columns) {
assign(x, df[rows,columns],envir = .GlobalEnv)
}
我不确定我是否理解其中任何一个背后的用例或原理。。。