请将文件下载到您的计算机中,然后运行: http:
//freeuploadfiles.com/bb3cwypih2d2
data=read.table("path/to/file", sep="|",quote='',
head=T,blank.lines.skip=T,as.is=T)
ddata=array(data,dim=c(nrow(data),ncol(data)))
ddata[1,1]
我想提取第一列的第一个元素。答案应该是AAC
。
我怎么做?
请将文件下载到您的计算机中,然后运行: http:
//freeuploadfiles.com/bb3cwypih2d2
data=read.table("path/to/file", sep="|",quote='',
head=T,blank.lines.skip=T,as.is=T)
ddata=array(data,dim=c(nrow(data),ncol(data)))
ddata[1,1]
我想提取第一列的第一个元素。答案应该是AAC
。
我怎么做?
从长远来看,清理代码并使生活更轻松的一些建议:
data.frame
,而不是array
.TRUE
称为T
. TRUE
是一个永远不能重新定义的保留字,而T
可以取任何值,包括FALSE
<-
符号进行赋值header
,不是head
。这可能会咬你数组只能包含一类对象。因此,将您的数据转换为array
会将numeric
列隐式转换为character
,这肯定是一件坏事。
然后你像这样索引数据框:
dat <- read.table("nasdaqlisted.txt", sep="|", quote='',
header=TRUE, blank.lines.skip=TRUE, as.is=TRUE)
dat$Symbol[1]
[1] "AAC"
以下索引的替代方法也返回相同的元素:
dat[1, "Symbol"]
dat[1, 1]
dat[, 1][1]
dat[["Symbol"]][1]
如果您真的想做愚蠢的事情并将数据转换为数组,请使用matrix
:
mdat <- as.matrix(dat)
mdat[1, 1]
Symbol
"AAC"
免责声明:我只在你问的时候才发布这个。数组和矩阵功能强大且速度快,但不适用于此类数据。