首页 > 解决方案 > 如何使用 walk() 或 walk2() 保存临时文件/.RData 文件

问题描述

我有一个函数,我在其中识别两个数据帧之间的新行,我想将它们保存为 .RData 以供以后在项目目录中的临时文件夹中的另一个函数中使用。

函数如下所示:

fun <- function(df1, df2){

  if(identical(df1, df2)){

    stop("No new updated rows") 

    } else { 
      df_combined <- bind_rows(df1, df2, .id = "group")

      new_rows <-  df_combined %>% filter(group == 2)

      n <-  df_combined %>% filter(group == 2) %>% count

      print(str_c("there are ", n, " new rows"))

    }


}

下面是它的工作原理:

mt_1 <- mtcars[1:4]
mt_2 <- mtcars[1:10]

> fun(mt_1, mt_2)
[1] "there are 32 new rows"

我试图new_rows通过添加来保存对象:

new_rows %>% walk(~.x %>% saveRDS(file = paste0("/temp/", Sys.Date(), "new_rows.RData")))

我无法弄清楚walk()方面。感谢您的任何建议!

标签: rmemory

解决方案


推荐阅读