[英]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.