r - 在 R 中创建一个可以遍历不同数据帧的函数/宏
问题描述
我创建了十个不同的数据框(例如 df1、df2、...、df10)。我想spread
在所有这些数据帧上使用 R 中的函数。我的解决方案是在 R 中创建一个函数,该函数可以spread
在所有数据帧上重复该函数并创建十个具有更新名称的新数据帧:df1_wide
, df2_wide
, ..., df10_wide
。我最初的想法是这样的:
new_function <- function(df) {
"df"_wide <- spread(df, key=time, value=values)
}
df_list <- list(df1,df2,...,df10)
function(df_list)
解决方案
spread
已退休,因此您可以切换到pivot_wider
. 用于lapply
将自定义函数应用于列表中的每个数据框。
new_function <- function(df) {
tidyr::pivot_wider(df, names_from =time, values_from =values)
}
df_list <- list(df1,df2,...,df10)
#Or
#df_list <- mget(paste0('df', 1:10))
df_result <- lapply(df_list, new_function)
推荐阅读
- wolfram-mathematica - 如何在 Mathematica 中解决这个 NDSolve 问题
- python - 使用 geopandas 计算距离时 geoseries.to_crs() 失败
- java - excel中的数据读取并删除空白行并从行中获取数据添加到数组列表中的列表
- database - 如何在 Codeigniter 3 模型中获取类别、项目和子项目?
- batch-file - 如何一次将多个值传递到批处理文件
- python - 使用 xlrd 读取 excel 时出现数字格式问题
- django - 如何从 JSON 中的模板重写数据?
- angular - ui-router 中是否有等效于 transition.from() 的 @angular/router?
- c# - 如何在不访问应用程序目录的情况下将程序集从字节数组加载到非默认 AppDomain 中?
- batch-file - 替换可能因字符串上的特定名称而异的文件名