-5

似乎 R 中的 forloops 不像我想的那样工作:

 myVector <-c(0,0,0)
> for (i in 0:0){
 s1<-sum(e1*data3[,i]);
 s2<-sum(e2*data3[,i]);
 s3<-sum(e3*data3[,i]);
 hilf <- cbind(s1,s2,s3);
 myVector <- cbind(myVector, help);
 }

有效,但结果是:

> myVector
      myVector s1 s2 s3
 [1,]        0  0  0  0

现在,我预计会有 3 个零。有谁知道为什么我得到四个维度而不是三个维度?

4

1 回答 1

3

尽管您发布的代码很有趣,但这里发生的事情与for-loops 无关。这是你的多重cbind陈述。

您正在尝试将一个高 1x3 矩阵与一个长度为 3 的向量组合在一起。这将导致myVector在组合时丢失它的最后两个元素,正如您在粘贴的输出中所看到的那样。

相反,如果您转置两者之一(或myVectorhilf),您可能会得到更符合您正在寻找的东西。

我假设help你的意思是hilf

于 2012-12-11T08:44:52.533 回答