MATLAB爱好者论坛-LabFans.com

MATLAB爱好者论坛-LabFans.com (https://www.labfans.com/bbs/index.php)
-   MATLAB论坛 (https://www.labfans.com/bbs/forumdisplay.php?f=6)
-   -   [求助]请教一个循环问题 (https://www.labfans.com/bbs/showthread.php?t=4975)

Juicy 2008-10-23 17:41

[求助]请教一个循环问题
 
X_1 = data(find(Label(:)==1),1:s);
X_2 = data(find(Label(:)==2),1:s);
X_3 = data(find(Label(:)==3),1:s);
X_4 = data(find(Label(:)==4),1:s);
X_5 = data(find(Label(:)==5),1:s);

请教一下:

如果想表示成X(i),i=1,2,3,4,5,怎么用循环来实现呢?

先给X设定一个存储空间,X=zeros()

多谢!:tongue:

补充说明一下数据的大小:
data 745×328
Label 745×1
s 328

mathjiang 2008-10-23 19:19

回复: [求助]请教一个循环问题
 
要用双下标,你把数据传上来,操作操作。

Juicy 2008-10-24 23:25

回复: [求助]请教一个循环问题
 
找到了一种表示,但是数据都会显示在屏幕上。有高手知道怎么让数据不显示么?Thanks a lot!
X = cell(N,1);
for i = 1:N
X_i = data(find(Label(:)==i),1:s);
eval(['X',num2str(i),' = X_i'])
X{i} = eval(['X' num2str(i)])
end

meteora1005 2008-10-25 00:30

回复: [求助]请教一个循环问题
 

eval(['X',num2str(i),' = X_i'])
X{i} = eval(['X' num2str(i)])
你这两句都没加分号,肯定要显示在屏幕么:sweat:

Juicy 2008-10-25 16:18

回复: [求助]请教一个循环问题
 
[QUOTE=meteora1005;18416]晕
eval(['X',num2str(i),' = X_i'])
X{i} = eval(['X' num2str(i)])
你这两句都没加分号,肯定要显示在屏幕么:sweat:[/QUOTE]

呵呵,其实开始我是加了分号的,后来发现数据仍然会显示,索性就去掉了。

又加分号试了次,还是不行。。。:sweat:

Juicy 2008-10-28 18:02

回复: [求助]请教一个循环问题
 
没人理啊,好可怜~~

xiezhh 2008-10-29 17:18

回复: [求助]请教一个循环问题
 
我来解决,eval命令里面加个分号即可

X = cell(N,1);
for i = 1:N
X_i = data(find(Label(:)==i),1:s);
eval(['X',num2str(i),' = X_i [COLOR="Red"];[/COLOR]'])[COLOR="Red"];[/COLOR]
X{i} = eval(['X' num2str(i)])[COLOR="Red"];[/COLOR]
end

Juicy 2008-11-04 03:51

回复: [求助]请教一个循环问题
 
[QUOTE=xiezhh;18719]我来解决,eval命令里面加个分号即可

X = cell(N,1);
for i = 1:N
X_i = data(find(Label(:)==i),1:s);
eval(['X',num2str(i),' = X_i ;']);
X{i} = eval(['X' num2str(i...[/QUOTE]

在失望之余,看到你的回复,真是感激:cry:

问题已解决,多谢!:biggrin:


所有时间均为北京时间。现在的时间是 12:22

Powered by vBulletin
版权所有 ©2000 - 2025,Jelsoft Enterprises Ltd.