R 循环变量名,创建新变量并赋值

R 循环变量名,创建新变量并赋值,r,loops,assign,R,Loops,Assign,我试图确定多个向量的平均值。有没有比在循环中使用assign来计算均值更有效的替代方法,正如我在下面所做的那样 a=c(1,2,3,4) b=c(1,3,4,3,4) c=c(3,9,4,2,7,3,7) for (i in c("a","b","c")) { assign(paste(i,"mean", sep = ""), mean(get(i))) } 不是为每个向量创建一个新变量,而是计算并存储每个向量的平均值,如: means <- sapply(mget(c("a",

我试图确定多个向量的平均值。有没有比在循环中使用
assign
来计算均值更有效的替代方法,正如我在下面所做的那样

a=c(1,2,3,4)
b=c(1,3,4,3,4)
c=c(3,9,4,2,7,3,7)
for (i in c("a","b","c")) {
  assign(paste(i,"mean", sep = ""), mean(get(i)))  
}

不是为每个向量创建一个新变量,而是计算并存储每个向量的平均值,如:

means <- sapply(mget(c("a", "b", "c")), mean)
请注意,这可能会简化计算平均值后使用的代码。如果您有
var,请尝试
list2env('name
means["a"]
#   a 
# 2.5 
means["b"]
# b 
# 3 
means["c"]
# c 
# 5