作者liu02112 (好想吃惭愧棒棒糖.......)
看板MATLAB
标题[请益] 请问这样写程式哪里有错?
时间Fri Nov 25 01:30:35 2011
事情是这样的 小弟我想从矩阵A里面 20个抓一组出来处理
所以就这样写
for j=1:1:12
clear;
Filename='rate_ia_dot.xls';
A=xlsread(Filename);
p11=zeros(20,1);
p12=zeros(20,1);
eval([p11,'=',num2str(A(1+(j-1)*20:20+(j-1)*20,1)),';'])
eval([p12,'=',num2str(A(1+(j-1)*20:20+(j-1)*20,2)),';'])
.
.
.
end
可是结果一直出现
??? Subscript indices must either be real positive integers or logicals.
Error in ==> test at 7
eval([p11,'=',num2str(A(1+(j-1)*20:20+(j-1)*20,1)),';']);
请问是那里出错?? 又 该怎麽写才对??
先谢谢花时间看这篇的人了 谢谢
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 111.255.3.132
1F:→ Raymond0710:为什麽不直接p11=A(1+(j-1)*20:20+(j-1)*20,1); ?? 11/25 01:56
2F:→ Raymond0710:clear放里面??? 11/25 01:59
3F:→ abc01251:可以解释一下~eval 那边 要做甚麽嘛? 11/25 02:20
4F:推 cmjer:clear ??? 那不就把回圈的j清除,num2str内的j不就代表虚数? 11/25 10:40
5F:→ liu02112:原来如此(恍然大悟) 谢谢你 c大 11/25 12:11
6F:推 Raymond0710:重点是clear 只会放在开头呀 = = 11/25 12:42