r - 如何在R中操作excel文件的文件夹?
问题描述
所以我有一个格式相同的excel文件文件夹。这是我正在使用的简化版本:
country count year
USA 23232 2019
USA 3993 2019
RUSSIA 67574 2019
JAPAN 31 2019
JAPAN 535 2019
所以我想对我文件夹中的每个文件执行以下操作
df %>%
group_by(country, year) %>%
summarize(count = sum(count))
在一个文件中,这将如下所示:
country year count
1 JAPAN 2019 566
2 RUSSIA 2019 67574
3 USA 2019 27225
那么我怎样才能对我文件夹中的每个文件执行此操作,它们又是相同的。最终目标将是一个包含所有文件计数数据的数据帧。首选 Tidyverse
解决方案
folder_path <- "insert_path_here"
files <- list.files(path=folder_path)
results <- lapply(files, function(x) {
df <- read.csv(paste0(folder_path, "/", x))
df <- df %>%
group_by(country, year) %>%
summarize(count = sum(count))
}
)
df_results <- do.call(bind_rows, results)
或者,您可以手动将文件定义到列表中,但其要点是该脚本将:
- 遍历该列表中的每个文件,并为每个文件:
- 读入电子表格
- 执行数据操作
- 将所有结果绑定到数据框中
推荐阅读
- python - 从数据框中的组中删除某一列中具有最小值的行
- javascript - 在 Javascript 中重新格式化 JSON
- elasticsearch - 每个函数的 ES function_score min_score
- apache-kafka - 如何配置 Kafka 消费者只处理一次消息?
- r - 使用二元变量 R 进行线性优化
- entity-framework-extensions - EFPlus BulkInsert - 如何获取数据库生成的 ID
- php - PHP 中的 Paymaya 集成
- bluetooth - Android 设备与 Arduino 的蓝牙连接
- c# - C#- 在 dataGridView 的动态数据库表中查找列索引
- python - Python绘制到不同的数字失败