假设有两个列表;
my_List_B
总是有一个元素,要么
my_List_A
或,my_List_A
有没有简单的方法可以按照规则将
my_List_A
中的值更改为my_List_B
中的值?
我唯一的解决方案涉及
map
和递归。对于本应简单的事情来说,这是一件棘手的事情。
my_list_A <- list(
level1 = list(
item1 = 1,
item2 = 2,
sublist1 = list(
subitem1 = "a",
subitem2 = "b"
)
),
level2 = list(
item3 = 3,
item4 = 4,
sublist2 = list(
subitem3 = "c",
subitem4 = "d"
)
)
)
my_list_B <- list(
level1 = list(
sublist1 = list(
subitem2 = "c")
)
)
您可以使用
modifyList
来实现此目的:
my_list_A <- list(
level1 = list(
item1 = 1,
item2 = 2,
sublist1 = list(
subitem1 = "a",
subitem2 = "b"
)
),
level2 = list(
item3 = 3,
item4 = 4,
sublist2 = list(
subitem3 = "c",
subitem4 = "d"
)
)
)
my_list_B <- list(
level1 = list(
sublist1 = list(
subitem2 = "c")
)
)
my_list_A <- modifyList(my_list_A, my_list_B)
print(my_list_A)