计算平均基因时出现“Out of Bounds”错误

时间:2014-12-14 13:15:36

标签: octave

这是我第一次尝试在Octave完成工作。我试图完成“for循环”以获得每个的平均值,然后减去它以将结果集中在5个项目的25个样本中。我得到了正确的数字,但是我也得到了一个超出范围的错误(如下所示)。有人可以帮帮我吗?

error: TrialPartB: A(I,J): row index out of bounds; value 6 out of bound 5

2 个答案:

答案 0 :(得分:1)

您已只使用5个数据成员填充了G_all结构,但是当您计算平均值时,就会循环i=1:25。只有5个成员,所以当它到达成员6时,它会因'row index out of bounds'错误而失败。

您需要将for循环限制为数据的大小,可能使用rows(G_all)而不是25作为循环的限制。

答案 1 :(得分:1)

正如rolfl已经解释过的那样,你正试图访问第1行...... 25但是G_all只有5行。

但除了这个问题,你不应该在for循环中计算平均值,而是使用函数" mean"代替。

a=[4 1 6];
mean(a)
  ans =  3.6667

如果你想从矢量中删除均值,只需使用" detrend":

detrend(a, 0)
ans =
   0.33333  -2.66667   2.33333