使用多个txt文件的内容创建数据框

时间:2016-10-08 20:59:15

标签: r

我是R编程的新手,并且在尝试从多个文本文件创建一个数据框时遇到了困难。我有一个包含100多个文本文件的目录。每个文件具有不同的文件名,但内容具有类似的格式,例如3列(姓名,年龄,性别)。我想将每个文本文件加载到R中并将它们合并到1个数据框中。

到目前为止,我有:

txt_files = list.files(path='names/', pattern="*.txt");
do.call("rbind", lapply(txt_files, as.data.frame))

这创建了文件名列表,但没有创建文件内容。我能够读取一个文件的内容并创建一个数据框,但我似乎无法同时为多个文件执行此操作。如果有人能提供任何帮助,我会非常感激,因为我完全陷入困境!

提前致谢!

1 个答案:

答案 0 :(得分:3)

我想你可能会想要这样的东西:

# Put in your actual path where the text files are saved
mypath = "C:/Users/Dave/Desktop"
setwd(mypath)

# Create list of text files
txt_files_ls = list.files(path=mypath, pattern="*.txt") 
# Read the files in, assuming comma separator
txt_files_df <- lapply(txt_files_ls, function(x) {read.table(file = x, header = T, sep =",")})
# Combine them
combined_df <- do.call("rbind", lapply(txt_files_df, as.data.frame)) 

当我创建几个示例文本文件时,至少这对我有用。 希望有所帮助。