合并R

时间:2017-09-19 16:41:49

标签: r

我在R中遇到了一个基本问题。我必须将 72 excel文件与具有相同变量的类似数据类型合并。我必须将它们合并到R中的单个数据集。我已经使用下面的代码进行合并,但这对于这么多文件似乎不实用。有人可以帮帮我吗?

data1<-read.csv("D:/Customer_details1/data-01.csv")

data2<-read.csv("D:/Customer_details2/data-02.csv")

data3<-read.csv("D:/Customer_details3/data-03.csv")

data_merged<-merge(data1,data2,all.x = TRUE, all.y = TRUE)

data_merged2<-merge(data_merged,data3,all.x = TRUE, all.y = TRUE)

1 个答案:

答案 0 :(得分:2)

首先,如果扩展程序是.csv,那么它们不是Excel文件,而是它们的.csv文件。

我们可以利用apply系列函数有效地完成此任务。

首先,让我们创建一个文件列表:

setwd("D://Customer_details1/")

#  create a list of all files in the working directory with the .csv extension
files <- list.files(pattern="*.csv")

在这种情况下,我们可以使用purrr::map,但我们也可以使用lapply - 更新为map_dfr以自动reduce删除rbind {1}} - 进入数据框:

require(purrr)

mainDF <- files %>% map_dfr(read.csv) 

如果需要,您可以将其他参数传递给read.csvmap(read.csv, ...)

请注意,要使rbind生效,列名必须相同,我假设它们基于您的问题。