如何根据函数参数重命名R中的对象?

如何根据函数参数重命名R中的对象?,r,R,假设我有一个函数,它返回一个基于某个数据帧参数的向量。我想在循环中迭代使用这个函数,所以我希望它返回的向量具有不同的名称(否则我将无法区分它们)。具体来说,返回向量的名称需要根据某个索引进行更改,我将该索引作为参数t传递给函数。因此,如果我用参数t=1调用函数,它将返回一个名为“vector1”的向量;如果我用参数t=2调用函数,它将返回一个名为“vector2”的向量,依此类推。注意,就这个问题而言,向量的元素是什么并不重要;它们可以完全相同,也可以完全不同——我只想根据函数的参数对它们进行重

假设我有一个函数,它返回一个基于某个数据帧参数的向量。我想在循环中迭代使用这个函数,所以我希望它返回的向量具有不同的名称(否则我将无法区分它们)。具体来说,返回向量的名称需要根据某个索引进行更改,我将该索引作为参数t传递给函数。因此,如果我用参数t=1调用函数,它将返回一个名为“vector1”的向量;如果我用参数t=2调用函数,它将返回一个名为“vector2”的向量,依此类推。注意,就这个问题而言,向量的元素是什么并不重要;它们可以完全相同,也可以完全不同——我只想根据函数的参数对它们进行重命名

我是新手,如果这个问题问得不恰当,我很抱歉。下面是我尝试过的,这显然是错误的,但希望能说明我正在尝试做什么

#this function is passed a dataframe and returns some vector named ["vector" + the argument t] 

indexed_vector <- function(data, t) { 

   # ... code which creates a vector (called "vector") from data...#

   paste0("vector", as.character(t)) <- vector

   return(paste0("vector", as.character(t)))


}

#using the function once 
indexed_vector(data, 10)
#ideally this would return a vector called "vector10"  


#using the function in a loop to create multiple vectors
for(i in 1:10){indexed_vector(data, i))
#ideally this would create a list of vectors where each is called "vectori", 
#i.e. "vector1", "vector2", "vector3"..."vector10"

#此函数被传递一个数据帧,并返回一些名为[“vector”+参数t]的向量

在R中,不能返回称为某物的向量。如果您希望名为
vector_1
的向量在调用函数后立即出现,而无需将其存储在任何位置,则需要使用
assign
如果您需要创建对象,则可以使用
assign
这将使我找到解决问题的正确途径,谢谢!