我有以下名为list的示例:
> named_list <- c(0,0,0)
> names(named_list) <- c('a','b','c')
> named_list
a b c
0 0 0
我有一个带有我想要改变的值的向量
> set_to_1 <- c('b','c','d')
所以现在我改变了值
> named_list[set_to_1] <- 1
我得到了
> named_list
a b c d
0 1 1 1
但是,我想得到
> named_list
a b c
0 1 1
我该怎么做?
答案 0 :(得分:4)
也许这适合你:
named_list[names(named_list) %in% set_to_1] <- 1
named_list
# a b c
# 0 1 1
或者这个:
named_list[intersect(names(named_list), set_to_1)] <- 1