提取名称在for循环中内置的变量子集的值

格鲁博格

我试图将名称建立在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] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章