【问题标题】:Looping a function I created over a list of dataframes in R循环我在 R 中的数据框列表上创建的函数
【发布时间】:2020-02-04 15:01:29
【问题描述】:

我有 2002-2020 年的 18 个数据集,我想在将它们绑定在一起之前添加一个年份列。我创建了这个函数:

year_add <- function(x,y) {mutate(x, Year =y)} ## adds the year variable to data frame

这对一个数据框非常有效,但我不知道如何通过所有 18 个数据集的列表运行它。我已经尝试过循环和 lapply,但似乎无法让它们中的任何一个工作......有什么建议吗?

仅供参考,要在一个数据集上运行代码,我简单地说: year_add(data2002, "2002")

【问题讨论】:

  • 尝试将其设为reproducible example。你试过循环和 lapply 如何?
  • 很难回答没有可重复的例子,你有没有查看地图(来自 purrr)包。

标签: r list loops lapply


【解决方案1】:

试试

names(list_of_dataframes) <- 2002:2020
dplyr::bind_rows(list_of_dataframes, .id = "Year")

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-03-31
    • 2018-08-28
    • 2016-05-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-08-26
    相关资源
    最近更新 更多