當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


R modifyList 遞歸修改列表的元素


R語言 modifyList 位於 utils 包(package)。

說明

通過更改每個級別的元素子集以匹配第二個列表,以遞歸方式修改可能嵌套的列表。

用法

modifyList(x, val, keep.null = FALSE)

參數

x

名為 list ,可能為空。

val

包含組件的命名列表,用於替換 x 中的相應組件或添加新組件。

keep.null

如果 TRUEval 中的 NULL 元素將變為 x 中的 NULL 元素。否則,相應的元素(如果存在)將從 x 中刪除。

x 的修改版本,修改確定如下(此處,列表元素由其名稱標識)。 valx 中缺少的元素將添加到 x 中。對於兩者共有但本身不是兩個列表的元素, x 中的組件將被 val 中的組件替換(或可能被刪除,具體取決於 keep.null 的值)。對於兩個列表中的公共元素, x[[name]] 替換為 modifyList(x[[name]], val[[name]])

例子

foo <- list(a = 1, b = list(c = "a", d = FALSE))
bar <- modifyList(foo, list(e = 2, b = list(d = TRUE)))
str(foo)
str(bar)

作者

Deepayan Sarkar Deepayan.Sarkar@R-project.org

相關用法


注:本文由純淨天空篩選整理自R-devel大神的英文原創作品 Recursively Modify Elements of a List。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。