我正在尝试将一系列文本文件上传到表格中。 Read.csv适用于1个文件,但是当我尝试使用Map&rbind合并文件时,出现了我不明白的错误。 进入表格后,我就可以开始清理数据
我尝试使用lapply,但是stil得到的错误略有不同。
这是我到目前为止的代码
install.packages(c("readr","dplyr","tidyr","purrr"))
library(readr)
library(dplyr)
library(tidyr)
library(purrr)
folder <- "D:/SCANNER/"
files_list <- list.files(path = folder, pattern="*.hmd")
data_wcci<- files_list %>% map(read.csv(header = FALSE,skip="8"))%>% reduce(rbind)
data_wcci
我希望最后有一张桌子。我不断收到以下错误消息。
Error in read.table(file = file, header = header, sep = sep, quote = quote, :
argument "file" is missing, with no default
这是文本文件中数据的一个小示例。上传后,我将需要删除\并分成自己的列。去掉 ;我还将需要在V1列上使用散布,但尚未为此考虑代码
> data_wcci
V1 V2 V3 V4 V5 V6 V7 V8
1 SURVEY\\TTS 11.00 TTS01 FALSE WDM WDM;
2 SECTION\\A3054020 2054.00 270711 270711 NA ;
3 OBSERV\\LLRT CR1 0.00 10; NA
4 OBVAL\\13 13.20 V; NA
5 OBSERV\\LRRT CR1 0.00 10; NA
6 OBVAL\\13 3.00 V; NA
7 OBSERV\\LLTX CR1 0.00 10; NA
8 OBVAL\\13 1.26 V; NA
9 OBSERV\\LRTX CR1 0.00 10; NA
答案 0 :(得分:0)
您的代码不起作用,因为您的read.csv
函数试图读取存储在文件夹中的文件,但是您必须提供完整的路径来读取它们。例如,您可以使用paste0(path, list.files[[1]])
进行此操作。
此代码段应执行您想要的操作:
do.call("rbind", lapply(files_list, function(x) read.csv(paste0(folder, x))))