道歉提前为这个问题的简单性。 我试图从一个网站与下面的编码R导入.dat文件:
www = "http://www.nilu.no/projects/ccc/onlinedata/ozone/CZ03_2009.dat"
data <- read.delim(www, header = TRUE, sep="\t")
我要访问的data.frame的值部分,但是,我不确定的data.frame的尺寸,如果I型NcoI位(数据)则返回1,其我期待3。 如何访问这个data.frame“第三”列?
DAT文件具有实际数据之前的额外信息的一些线条。 与跳过它们skip
的说法:
read.table("http://www.nilu.no/projects/ccc/onlinedata/ozone/CZ03_2009.dat",
header=TRUE, skip=3)
一个简单的方法来检查这一点,如果你不熟悉的数据集,是先用readLines
来检查了几行,如下图所示:
readLines("http://www.nilu.no/projects/ccc/onlinedata/ozone/CZ03_2009.dat",
n=10)
# [1] "Ozone data from CZ03 2009" "Local time: GMT + 0"
# [3] "" "Date Hour Value"
# [5] "01.01.2009 00:00 34.3" "01.01.2009 01:00 31.9"
# [7] "01.01.2009 02:00 29.9" "01.01.2009 03:00 28.5"
# [9] "01.01.2009 04:00 32.9" "01.01.2009 05:00 20.5"
在这里,我们可以看到实际数据的开始[4]
所以我们知道跳过的前三行。
更新
如果你真的只想要的Value
列,你可以做到这一点:
as.vector(
read.table("http://www.nilu.no/projects/ccc/onlinedata/ozone/CZ03_2009.dat",
header=TRUE, skip=3)$Value)
再次, readLines
是帮助我们找出我们将导入列的实际名称是有用的。
但我看不出有任何优势,这样做在读在整个数据集和后提取。