我编写了一个代码来操作时间序列数据的内容并输出到一个新创建的矩阵中。这是为了让我能够为时间序列数据构建相空间。
该列表是长度=N 的一维列表,称为“噪声”。
我想创建一个 MxN 矩阵,其中m = N -5*tdelay1
和n = 6
。当代码符合时,它会显示一个错误:
指数数组的边界之外。
代码如下:
float[,] phaseSpace6 = new float[(length-5*tdelay1-1), m];
for (int i = 0; i < (length-5* tdelay1-1); i++)
{
int col1 = i + tdelay1;
int col2 = i + 2 * tdelay1;
int col3 = i + 3 * tdelay1;
int col4 = i + 4 * tdelay1;
int col5 = i + 5 * tdelay1;
phaseSpace6[i, 1] = noise[i];
phaseSpace6[i, 2] = noise[col1];
phaseSpace6[i, 3] = noise[col2];
phaseSpace6[i, 4] = noise[col3];
phaseSpace6[i, 5] = noise[col4];
phaseSpace6[i, 6] = noise[col5];
}
作为编程新手,我不确定为什么会发生这种情况。如果有经验的人可以帮助我,我将不胜感激。