如何在R中操作excel文件文件夹?
所以我有一个excel文件文件夹,所有文件的格式都相同。以下是我正在使用的简化版本:如何在R中操作excel文件文件夹?,r,loops,dplyr,R,Loops,Dplyr,所以我有一个excel文件文件夹,所有文件的格式都相同。以下是我正在使用的简化版本: country count year USA 23232 2019 USA 3993 2019 RUSSIA 67574 2019 JAPAN 31 2019 JAPAN 535 2019 因此,我想对我文件夹中的每个文件执行以下操作 df %>% group_by(country, year) %>% summ
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 preferred此代码非常有用。您构建了一个读取excel文件的函数(我使用了
sheet=1
,但您可以更改它)。然后处理并分配一个带有文件名的键变量。然后,创建一个列表来执行该过程,并最终使用bind\u rows()
绑定内容。代码如下:
library(readxl)
library(dplyr)
#Extract files
vec <- list.files(path = 'Your/Path/Here',pattern = '.xlsx')
#Function
readprocess <- function(x)
{
y <- read_excel(x,1)
z <- y %>%
group_by(country, year) %>%
summarize(count = sum(count)) %>% mutate(Filename=x)
return(z)
}
#Apply
List <- lapply(vec,readprocess)
#Bind
df <- do.call(bind_rows,List)
库(readxl)
图书馆(dplyr)
#提取文件
vec此代码可能很有用。您构建了一个读取excel文件的函数(我使用了sheet=1
,但您可以更改它)。然后处理并分配一个带有文件名的键变量。然后,创建一个列表来执行该过程,并最终使用bind\u rows()
绑定内容。代码如下:
library(readxl)
library(dplyr)
#Extract files
vec <- list.files(path = 'Your/Path/Here',pattern = '.xlsx')
#Function
readprocess <- function(x)
{
y <- read_excel(x,1)
z <- y %>%
group_by(country, year) %>%
summarize(count = sum(count)) %>% mutate(Filename=x)
return(z)
}
#Apply
List <- lapply(vec,readprocess)
#Bind
df <- do.call(bind_rows,List)
库(readxl)
图书馆(dplyr)
#提取文件
你能在你的问题中给出你的目录结构的例子吗?你能在你的问题中给出你的目录结构的例子吗?