1
我想将大小为1x117031(X数组)的数组分解为一个大小为Nx140(Y数组)的数组,以便我可以绘制新数组并找出循环过程中的图如何变化测试(N约为1000)。分解数组
这里是我的代码:
mydata=xlsread('average_4_5');
for i=100:size(mydata)
X(i-99)=mydata(i,10);
end
for j=1:1000
Y(j, 1:140)=X(1,((140*j)-140):140*j);
end
但我得到一个错误:
Subscript indices must either be real positive integers or logicals.
看来问题从X(1,((140*j)-140):140*j)
快到了,我没有任何想法,为什么这并未” t认为j
是一个整数值。
有关如何进行此转换并绘制Y
的行以给出包含1000个条目的图的任何想法?
我不确定我是否完全按照你想要做的,但是听起来你很可能会丢掉所有的循环,并且只使用[''reshape'](http://www.mathworks.com/help/matlab /ref/reshape.html)函数。 – Dan
@丹感谢您的评论。确切地说,我现在用一个重塑功能替换了它,它起作用。感谢提醒我 – Kamran
最好[不要在Matlab中使用'i'和'j'作为变量名称](http://stackoverflow.com/q/14790740/1714410)。 – Shai