【发布时间】:2015-11-27 17:16:39
【问题描述】:
我正在尝试读取这些数据:http://www.biostat.umn.edu/~brad/data/smoking.dat 到 R。
我在http://stackoverflow.com/questions/11664075/import-dat-file-into-r中使用了答案
read.table("http://www.biostat.umn.edu/~brad/data/smoking.dat",
header=TRUE,, sep="\n", skip=2)
它有效,但给出了错误的数据。
head(x)
list.regions.81..num...c.8..5..3..8..5..1..6.
1 7, 3, 5, 7, 7, 2, 2, 5, 6, 6, 7, 4, 8, 7, 6,
2 6, 2, 8, 4, 4, 10, 4, 3, 7, 6, 5, 7, 7, 7, 5, 6, 4, 9, 4, 7,
3 4, 5, 9, 3, 7, 5, 5, 4, 5, 6, 6, 5, 2, 6, 2, 8, 7, 6, 5, 6,
4 3, 6, 6, 6, 6, 4, 10, 8, 3, 4, 2, 6, 5, 7, 7, 4, 7, 6,
5 2),sumnum=441,
6 adj=c(2, 5, 6, 8, 11, 45, 75, 80,
其实,在这个数据中有一些列表。
【问题讨论】:
-
x <- dget("http://www.biostat.umn.edu/~brad/data/smoking.dat")也许? -
似乎只导入了第二个列表——这就是你想要的吗?无论哪种方式,您都可以通过
res <- do.call(cbind.data.frame, x[-1L])转换为数据框 -
@DavidArenburg 你是对的,它只获得第二个列表。让我们看看是否可以拆分
dget-ing之前的文本。我想不出更聪明的方法;我从来没有尝试过像那样读取多个对象。 -
@DavidArenburg 更新,如果有更简单的方法请告诉我
标签: r