R语言如何向多维列表的所有子列表批量添加指定新条目
批量为R列表的所有子项新增固定字段
直接使用R基础包的lapply遍历所有子列表完成字段追加即可,无需逐个子列表手动修改:
# 定义需要新增的字段与对应值 new_fields <- list(myentry1 = "A", myentry2 = "B") # 遍历所有Point层级子列表,拼接原有内容与新字段 my_list <- lapply(my_list, function(point) c(point, new_fields))
执行后得到的列表和你给出的预期效果完全一致,可运行str(my_list)查看结构校验结果。
如果你日常使用tidyverse生态,也可以用purrr包的map函数实现相同效果:
library(purrr) my_list <- map(my_list, ~c(.x, list(myentry1 = "A", myentry2 = "B")))
如果后续需要追加更多字段,直接在new_fields列表里补充键值对即可,不需要调整遍历逻辑。
内容的提问来源于stack exchange,提问作者Priit Mets
相关产品推荐
相关产品推荐

