R使用read.table读取目录中的凌乱文件

时间:2013-04-23 16:29:02

标签: r lapply read.table

更新的问题: 现在我把我的文件拉到了一起,我正在努力管理和解析什么是干净和好的。我试过这个循环,但没有成功。这些碎片似乎在循环之外工作正常。有什么想法吗?     new< - data.frame()

for (i in 1:length(ldf)) {
a[i] <- as.data.frame(ldf[i])
a[i] <- as.data.frame(a[i][-1,])
 names(a[i]) <- "id"

 b[i] <- sqldf("select substr(id,1,1) as id, substr(id,3,10) as next1,         
   substr(id,14,8) as time1, substr(id,23,14) as code from a[i] ") 

new <- rbind(new, b[i])
}

再次感谢!

----------------------------------

我有一个从多个硬件设备下载的文件目录。硬件每6个小时创建一个文件,我们将每隔几周下载这些文件(来自3个设备)。因此,在任何给定的处理时间都会有很多文件。文件结构应该是:ID,日期,时间,代码(全部用空格分隔 - 不用逗号)。问题是文件中的某些行不完整或者可能只包含其中一个数据元素,甚至可能包含一个字符以指示电池电量不足。我想在跳过不完整的行时阅读所有完整的行。这可能吗?到目前为止,这是我的代码:

filenames <- list.files(files,pattern="*.*", full.names=TRUE)
filenames <- filenames[file.info(filenames)$size > 1] 
ldf <- lapply(filenames,read.table, header=F)

示例数据:

]    
3D9.1C2D1DB26E
C 04/17/2013 14:00:18 3D9.1C2D1DB26E
C 04/17/2013 14:00:30 3D9.1C2D1DB26E
C 04/17/2013 14:15:27 3D9.1C2D1DB26E

提前谢谢你。这个论坛非常棒,我非常感谢这个社区的所有支持!

0 个答案:

没有答案