我有一个文本文件读入R,但该文件似乎不是制表符分隔。文件的唯一结构是列总是在某个点完成(即列是右对齐的)。read.table与“右对齐”数据
因此,首先,这种类型的数据结构是否有名称?那么,如何在R中读取?
2.37 2.03 2.38
5,397 5,082 5,609
13.0 21.6 15.2 15.2
128.0 103.1 134.2 133.4
只需使用函数read.table()不工作,缺少的值不会在正确的地方放...
# download data:
tmp <- tempfile()
f <- download.file("http://usda.mannlib.cornell.edu/usda/waob/wasde//1990s/1995/wasde-01-12-1995.txt", tmp)
D <- file(tmp)
data_enc <- readLines(D, warn=FALSE)
close(D)
dat <- sapply(strsplit(data_enc[232:236], ":"), function(x) x[2])
writeLines(dat, tmp)
## try to read data:
read.table(tmp, fill = TRUE, sep ="", header=FALSE)
给出:
V1 V2 V3 V4
1 2.37 2.03 2.38 NA
2 5,397 5,082 5,609 NA
3 13.0 21.6 15.2 15.2
相关文章:http://stackoverflow.com/questions/24715894 – zx8754