I'm attempting to merge multiple csv files using R. all of the CSV files have the same fields and are all a shared folder only containing these CSV files. I've attempted to do it using the following code:
multmerge=function(mypath) {
filenames=list.files(path=mypath, full.names=TRUE)
datalist= lapply(filenames, function (x) read.csv(file=x, header=True))
Reduce(function(x,y) merge(x,y), datalist)}
I am entering my path as something like "Y:/R Practice/specdata". I do get an ouput when I apply the function to my 300 or so csv files, but the result gives me my columns names, but beneath it has <0 rows> (or 0-length row.names). Please let me know if you have any suggestions on why this isn't working and how I can fix it.
For a shorter, faster solution
library(dplyr)
library(readr)
df <- list.files(path="yourpath", full.names = TRUE) %>%
lapply(read_csv) %>%
bind_rows
Your code worked for me, but you need change header = True
to header = TRUE
.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With