i=1
while(i<length(adata)){
h=1
j=1
while(j<6917){
if(bdata$attri1[j]==adata[i]){
juzhen[i,h]=bdata$attri2[j]
h=h+1
}
j=j+1
}
i=i+1
}
上面的是我设计的矩阵算法,报错,原因是juzhen[i,h]在i=5时超出下标,于是我用向量检查一下
x<-rep(8,1000)
h=1
for(i in 1:6917){
if(bdata$attri1[i]==adata[5]){
x[h]=bdata$attri2[i]
h=h+1
}
}
这里的结果是1000个x里有900多个数据被改写,和上面的矩阵不一样啊!?
后来我又设计程序发现在矩阵的算法里,i=5时,行元素有1200多个被改写,为什么啊?求大神解释算法问题
![](https://bbs-cdn.datacourse.cn/static/image/smiley/default/mad.gif)