繁体   English   中英

如何修改数据框列表以保留原始数据中的更改

[英]How do I modify a list of dataframes to persist the changes in the original data

我注意到我想要对列表中的所有数据帧执行的任何修改都不会修改导入到笔记本中的原始数据,除非我将此类更改应用于列表中的各个数据帧。 我是 R 的新手,请问有没有其他方法可以轻松地将相同的修改应用于多个数据名?

data_frames <- list(.............)
for (df in data_frames) {
  clean_names(df)
  rename_with(df, tolower)
}
data_frames <- list(.........)

lapply(data_frames, function(df) {
  clean_names(df)
  rename_with(df, tolower)
  df
})
for (i in seq_along(data_frames)) {
  data_frames[[i]] <- clean_names(data_frames[[i]])
  data_frames[[i]] <- rename_with(data_frames[[i]], tolower)
}

这些都无法修改导入的原始数据。

使用dplyr::lst创建命名的数据帧列表并应用函数。 然后使用list2env将更改后的数据从列表传输到原始数据。

data_frames <- dplyr::lst(.............)

for (i in seq_along(data_frames)) {
  data_frames[[i]] <- clean_names(data_frames[[i]])
  data_frames[[i]] <- rename_with(data_frames[[i]], tolower)
}

list2env(data_frames, .GlobalEnv)

注意 - 通常建议将数据框保存在列表中,而不是在全局环境中创建单独的数据框。 他们更容易以这种方式管理/处理。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM