繁体   English   中英

read.table R 中的多个 Txt 文件

[英]read.table multiple Txt files in R

我需要读取 R 中的多个 Txt 文件以创建唯一的数据集并将其导出到 Excel 上。 这是我用的

BHCFYYMM <- read.table('bhcf1803.txt''bhcf1806.txt''bhcf1809.txt''bhcf1812.txt', sep="^", nrows=1300, comment.char="", header=TRUE, quote="", na.strings="--------", as.is=TRUE)
setwd("/Users/marco/Desktop/research/silvio")
getwd()
write.table(BHCFYYMM, file = "HoldingCompanyData.csv", sep = ",")

但我收到此错误: Error: unexpected string constant in "BHCFYYMM <- read.table('bhcf1803.txt''bhcf1806.txt'"

知道我该如何处理吗?

您的代码可能失败,因为您不能一次提供read.table()多个文件路径。

您可以改为使用lapply()将文件路径列表提供给read.table() 然后可以使用dplyr::bind_rows()组合这些表。

(假设您提供的其他参数是正确的)

# Load dplyr
# install.packages("dplyr")
library(dplyr)

# It is usually best practice to set your working directory before you do anything else.
setwd("/Users/marco/Desktop/research/silvio")

# Make list of files.
files <- c("bhcf1803.txt", "bhcf1806.txt", "bhcf1809.txt", "bhcf1812.txt")

# Read files into a list of tables.
tables <- lapply(X = files, FUN = read.table, sep = "^", nrows = 1300, comment.char = "", header = TRUE, quote = "", na.strings = "--------", as.is = TRUE)

# Bind tables together into a single table.
BHCFYYMM <- bind_rows(tables)

# Write table to a new file.
write.table(BHCFYYMM, file = "HoldingCompanyData.csv", sep = ",")

我不知道文本文件中有什么,但如果我想导入多个文件并绑定它们,我通常会这样做

#设置工作目录
setwd("C:/xxxx/xxxx/桌面/DUMP/")

#选择文件扩展名的模式

文件 <- list.files(pattern=".txt")

#读取所有文件并绑定行
tbl<-lapply(files, read.table) %>% bind_rows()

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM