我试图将名称建立在for循环模型上的变量的内容传输到R中的中间对象,但没有成功:
my_list <- list(first = "un", second = "deux", third = "trois")
my_vect <- c("first","second","third")
for(i in my_vect){intermediate <- get(paste("my_list$",i,sep=""))}
get(paste(“ my_list $”,i,sep =“”))中的错误:找不到对象'my_list $ first'**
my_list$first
[1] "un"
R为什么找不到my_list$first
明显存在的对象并对其求值un
?
我们可以使用[[
代替$
my_list[[my_vect[1]]]
#[1] "un"
使用for
循环
out <- vector('list', length(my_vect))
for(i in seq_along(my_vect)) out[[i]] <- my_list[[my_vect[i]]]
或基于整个'my_vect'的子集
my_list[my_vect]
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句