【问题标题】:How to change the value of an element within a list using purrr (tidyverse)如何使用 purrr (tidyverse) 更改列表中元素的值
【发布时间】:2021-04-24 14:06:02
【问题描述】:

如果我有以下列表

list1 <- list(list(a = 2, b = 3), list(c = 4, d = 5))
list2 <- list(e = "a", f = "b")
mylist <- list(list1, list2)

mylist 中的a 的值更改为不同的值(最好在purrr 中)的最简单方法是什么?

【问题讨论】:

    标签: r tidyverse


    【解决方案1】:

    类似:

    list1[[1]][[1]] <- newvalue
    

    【讨论】:

    • 嗨@FrsLry,希望在purrr 内实现这一点,以便我可以使用管道运算符更改列表中的项目。
    • 老实说,在 R 中使用列表似乎是一团糟。也许你可以在这里找到一个(不那么优雅的)答案 (stackoverflow.com/questions/51604391/…)
    • 感谢@FrsLry,我注意到使用管道运算符很难达到相同的效果,所以我会采用您的解决方案
    【解决方案2】:

    也许你可以使用pluck

    purrr::pluck(mylist, 1, 1, 'a') <- 'new_value'
    

    【讨论】:

      猜你喜欢
      • 2019-04-27
      • 2021-01-13
      • 1970-01-01
      • 1970-01-01
      • 2019-01-13
      • 2020-01-01
      • 1970-01-01
      • 2021-11-16
      • 1970-01-01
      相关资源
      最近更新 更多