[英]read.table not working for importing a .dat
我正在尝试使用read.table
命令从互联网上的.dat
文件导入数据集。 格式化文件时我通常没有问题,例如:
A B
1 2
3 4
但是这个数据集是格式化的
A B A B
1 2 3 4
5 6 7 8
(您可以在这里找到我遇到问题的数据集: https://www2.isye.gatech.edu/~jeffwu/book/data/BrainandBodyWeight.dat )
我当前的代码行是:
Data2 = read.table("https://www2.isye.gatech.edu/~jeffwu/book/data/BrainandBodyWeight.dat", header = TRUE)
我得到的错误是:
扫描错误(file = file,what = what,sep = sep,quote = quote,dec = dec,:第 1 行没有 12 个元素
问题是 header 行中有空格,所以只需使用skip = 1
跳过它。
从那里,我们可以使用重复的逻辑向量c(TRUE, FALSE)
和c(FALSE, TRUE)
来提取偶数行和奇数行。
数据的最后一行有一些空值,所以用complete.cases()
删除那些。
data <- read.table("https://www2.isye.gatech.edu/~jeffwu/book/data/BrainandBodyWeight.dat",
header = FALSE, fill = TRUE, skip = 1)
result <- data.frame(Body.Wt = unname(unlist(data[,c(T,F)])),
Brain.Wt = unname(unlist(data[,c(F,T)])))
result <- result[complete.cases(result),]
head(result)
Body.Wt Brain.Wt
1 3.385 44.5
2 0.480 15.5
3 1.350 8.1
4 465.000 423.0
5 36.330 119.5
6 27.660 115.0
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.