是否可以在R中一步复制和修改列表?
我发现自己经常这样做:是否可以在R中一步复制和修改列表?,r,list,R,List,我发现自己经常这样做: my_list <- list(a = list(b = "something"), c = 3, d = "a lot of other options") my_list_2 <- my_list my_list_2$a$b <- "something_else" my_list_2$c <- 5 一种选择是在中使用: within(my_list, {a$b = "something_else"; c = 5}) #$a #$a$b #
my_list <- list(a = list(b = "something"), c = 3, d = "a lot of other options")
my_list_2 <- my_list
my_list_2$a$b <- "something_else"
my_list_2$c <- 5
一种选择是在中使用
:
within(my_list, {a$b = "something_else"; c = 5})
#$a
#$a$b
#[1] "something_else"
#
#
#$c
#[1] 5
#
#$d
#[1] "a lot of other options"
当然,在同一步骤中,通过将结果分配给新对象(例如
my_list2 <- within(my_list, {a$b = "something_else"; c = 5})
my_list2的形式与xxxx的问题完全相同:
new_list <- modifyList(my_list, list(a = list(b = "something_else"), c = 5))
new\u list不清楚你想要什么,也许rep(my\u list\u 2,2)
或者也检查?modifyList
如@akrun所说,将xxxxx
替换为modifyList
,你很好!这太棒了
my_list2 <- within(my_list, {a$b = "something_else"; c = 5})
new_list <- modifyList(my_list, list(a = list(b = "something_else"), c = 5))