我想将一个ASCII文件读取到R环境。但是,ASCII文件是非分隔的并且数据不是连续的(变量之间有一些空格)所以为了读取数据,我使用了下面的语法,即
test <- read.fwf("D:/R_process/ASCII.txt", width = c(10, 4, 1, 4, 9, 9, 1,1,1,1,1,1,1,3,8))
现在我能够读取它,但读取的数据是错误的。实际上,我的输出应该只有适用的变量数据而不是空白数据。以下是ASCII数据。请让我知道如何编写语法以只读取文件中的适用数据。
提前感谢您的帮助。
这是数据:
000000000120151 04 0.766696 1 1000000000 010
000000000220151 04 1.458186 1 1000100000 020
000000000320151 04 0.185492 1 1000000000 015
000000000420151 04 0.961584 1 1000000000 003
000000000520151 04 0.650091 2 0001000000
000000000620151 04 0.430350 1 1000000000 020
000000000720151 04 3.192895 2 1011000000 000
000000000820151 04 0.617127 1 1010100000 015
000000000920151 04 0.399207 1 1000000000 010
答案 0 :(得分:1)
read.table("D:/R_process/ASCII.txt", sep = " ")
修改强> @Nick K发表评论后,新答案:
我知道你的宽度错误:
read.fwf("D:/R_process/ASCII.txt", width = c(10, 4, 1, 4, 9, 12, 35, 4))
答案 1 :(得分:1)
您可以使用strip.white
上的read.fwf
参数。
test <- read.fwf("D:/R_process/ASCII.txt",
width = c(10, 4, 1, 4, 9, 9, rep(1, 8), 3, 8),
strip.white = TRUE)