我有一些excel文件(.xlsx)存储运动员VO2max测试数据,我想作为一个组进行分析。每个文件代表一个客户端,我可以使用以下代码将所有文件放入R中的列表中:
files <- list.files(path = "C:/Users/.../vo2 tests", pattern = "*.xlsx", full.names = T)
然后,我希望能够从excel文件中特定工作表的特定列中找到最大值(这是客户端VO2max)。到目前为止,下面的代码可以找到我需要的值,但只返回其中一个文件的结果,但是我希望函数从每个excel文件中运行和收集,并输出到一个新的数据框架中:
tbl <- lapply(files, read_excel, sheet = "Averages", skip = 2)
max(tbl[[1]][["ml/Kg/min"]])
一旦我将所有的VO2max值都放到一个新的数据框架中,我想要将这个新数据集的平均值&标准差用于报告。其目的是,我可以为我的客户提供一个不断更新的排名系统,他们的表现与其他运动员相比。这里的任何帮助都将不胜感激。
发布于 2020-07-13 10:10:01
读取文件后,可以在每个文件中获取列的max。
all_maxs <- sapply(tbl, function(x) max(x[["ml/Kg/min"]], na.rm = TRUE))然后您可以选择mean或sd of all_maxs。
https://stackoverflow.com/questions/62873410
复制相似问题