Топорный вариант (медленный):

data <- data.frame()
for (i in file_list){
   data <- rbind.fill(data, read.csv(i, stringsAsFactors=F))
}

Быстрый вариант:

data <- do.call("rbind.fill", lapply(file_list, 
              FUN = function(i) read.csv(i, stringsAsFactors=F))
                )

stringsAsFactors важно, поскольку, если в первом файле представлены не все уровни фактора, при объединении может получиться ерунда