我目前有以下循环。
> margin_values
$margINCBJP
[1] 0.8481856 0.9165585 0.9270849 0.7932756 0.8296131 0.8284826 0.7584834 0.2566567
$margINCTRS
[1] NA NA NA NA NA 0.84499199 0.73135251 -0.06664292
$margBJPTRS
[1] NA NA NA NA NA 0.01650935 -0.02713086 -0.32329962
for(i in 1:length(margin_values)) {
nam <- paste("x", i, sep = "")
assign(nam, margin_values[[i:i]])
}
这会创建从x1
到xn
开始的单独列表。然后,我如何自动组合所有列表中的数字以创建一个列表?我知道我可以手动输入c(x1, x2, x3...)
直到n,但由于n是可变的,无论如何让R只对从x开始的所有值做c()
?对于这个例子,n = 3,但根据我之前在代码中的参数,它可能会改变。
答案 0 :(得分:0)
我自己就碰到了这个,这就是我想出来的(当然是为你调整过的):
total<-c(lapply(ls(pattern = "x"),get))
这将创建一个列表total,每个元素都是以x
开头的变量之一