kk22boy 发表于 2012-5-15 22:45 
呵呵,numeric生成的是一个数值向量,管他是什么呢,等会用新的变量替代它就是了
哦,明白了,就是反正这个命令就是生成了占它后面参数个地址的东西,然后你往这个地址里放什么是任意的。是吧?
我再追问下,如果我想直接就生成字符串向量该用什么命令?R中有这个命令么?
如果想生成一个矩阵值,是不是用matrix(m,n),表示生成m行,n列的矩阵?
我在此例中把代码修改如下:
yanse=matrix(4,8)
for(i in 3:33){
if(
median(cpi[,i],na.rm=TRUE)>=median(cpi[,2])
){
yanse[i-1]="orange"}
else {yanse[i-1]="forestgreen"}
}
结果出来这么一个奇怪的东西:
> yanse
[1] "4" "forestgreen" "forestgreen" "orange" "orange"
[6] "orange" "orange" "orange" "orange" "forestgreen"
[11] "forestgreen" "orange" "forestgreen" "forestgreen" "forestgreen"
[16] "orange" "orange" "orange" "orange" "forestgreen"
[21] "forestgreen" "forestgreen" "forestgreen" "orange" "orange"
[26] "orange" "forestgreen" "orange" "orange" "orange"
[31] "orange" "orange"
出来的结果,既不是4行,也不是8列,而且第一个值是4,这是怎么回事?