2017-07-28 193 views
-1

我有一个包含396个csv文件的文件夹。在R中导入多个csv文件,但跳过前25行,然后跳过不同数量的行

每个csv文件的前25行是相同的,所以我想跳过它们。接下来,第26行是我想保留的标题行。

问题是我感兴趣的信息从csv文件中的不同行开始。有些从第48行开始,其他的在第36,32 ...等。我想跳过我的标题后的行到开始所需信息的行。有没有办法跳过前25行,保留标题行(第26行),并自动执行,以便R在行首之后跳过行,直到看到包含信息的起始行。

此外,一旦我到达我想要的行,值表示每隔一行或其他2 rows.is有办法解决这个,因为它不一致?

例子:

1. Name 
2.... 
. 
. 
25... 
26.Header 
27.... 
. 
. 
32/41/etc 12/04/2015 13:49 4  6 

我不知道用什么样的代码,但我开始使用这个代码的思考:

files<-list.files("filepath",pattern="*csv", full.names=T) 
names(files)<-files 
headers = read.csv(files, skip = 1:25, header = F, as.is = T) 


edata <- do.call(rbind, lapply(files, read_csv)) 

我不知道如何处理在做跳跃问题。呼叫。

有没有人遇到类似的问题,你是如何解决它?

谢谢。

+0

请复习[mcve]。 –

+0

需要更多解释。你可以用'skip = 25'跳过前25行。那么,你想保留的行中是否有任何图案?你想丢弃的行只是缺少的值?只是,请复制您的数据的真实示例 –

+0

我同意。只需使用'skip = 25',然后删除空行.... – pyll

回答

0
# First skip the 25 lines 
data = read.csv(file, skip = 25, header = T) 

# Then remove all other empty rows 
data[rowSums(is.na(data)) != ncol(data),]