Labfans是一个针对大学生、工程师和科研工作者的技术社区。 论坛首页 | 联系我们(Contact Us)
MATLAB爱好者论坛-LabFans.com
返回   MATLAB爱好者论坛-LabFans.com > 工程数学软件 > MATLAB论坛
MATLAB论坛 一切MATLAB相关问题在此讨论。
回复
 
主题工具 显示模式
旧 2008-10-23, 17:41   #1
Juicy
初级会员
 
注册日期: 2008-10-08
帖子: 24
声望力: 17
Juicy 正向着好的方向发展
默认 [求助]请教一个循环问题

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
__________________
:ft:
Juicy 当前离线   回复时引用此帖
旧 2008-10-23, 19:19   #2
mathjiang
高级会员
 
注册日期: 2008-01-02
帖子: 247
声望力: 22
mathjiang 正向着好的方向发展
默认 回复: [求助]请教一个循环问题

要用双下标,你把数据传上来,操作操作。
mathjiang 当前离线   回复时引用此帖
旧 2008-10-24, 23:25   #3
Juicy
初级会员
 
注册日期: 2008-10-08
帖子: 24
声望力: 17
Juicy 正向着好的方向发展
默认 回复: [求助]请教一个循环问题

找到了一种表示,但是数据都会显示在屏幕上。有高手知道怎么让数据不显示么?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
__________________
:ft:
Juicy 当前离线   回复时引用此帖
旧 2008-10-25, 00:30   #4
meteora1005
高级会员
 
注册日期: 2008-05-31
年龄: 38
帖子: 104
声望力: 19
meteora1005 正向着好的方向发展
默认 回复: [求助]请教一个循环问题


eval(['X',num2str(i),' = X_i'])
X{i} = eval(['X' num2str(i)])
你这两句都没加分号,肯定要显示在屏幕么:sweat:
meteora1005 当前离线   回复时引用此帖
旧 2008-10-25, 16:18   #5
Juicy
初级会员
 
注册日期: 2008-10-08
帖子: 24
声望力: 17
Juicy 正向着好的方向发展
默认 回复: [求助]请教一个循环问题

引用:
作者: meteora1005 查看帖子

eval(['X',num2str(i),' = X_i'])
X{i} = eval(['X' num2str(i)])
你这两句都没加分号,肯定要显示在屏幕么:sweat:
呵呵,其实开始我是加了分号的,后来发现数据仍然会显示,索性就去掉了。

又加分号试了次,还是不行。。。:sweat:
__________________
:ft:
Juicy 当前离线   回复时引用此帖
旧 2008-10-28, 18:02   #6
Juicy
初级会员
 
注册日期: 2008-10-08
帖子: 24
声望力: 17
Juicy 正向着好的方向发展
默认 回复: [求助]请教一个循环问题

没人理啊,好可怜~~
__________________
:ft:
Juicy 当前离线   回复时引用此帖
旧 2008-10-29, 17:18   #7
xiezhh
普通会员
 
注册日期: 2007-08-07
帖子: 64
声望力: 20
xiezhh 是一个将要出名的人
默认 回复: [求助]请教一个循环问题

我来解决,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)]);
end
xiezhh 当前离线   回复时引用此帖
旧 2008-11-04, 03:51   #8
Juicy
初级会员
 
注册日期: 2008-10-08
帖子: 24
声望力: 17
Juicy 正向着好的方向发展
默认 回复: [求助]请教一个循环问题

引用:
作者: xiezhh 查看帖子
我来解决,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...
在失望之余,看到你的回复,真是感激:cry:

问题已解决,多谢!:biggrin:
__________________
:ft:
Juicy 当前离线   回复时引用此帖
回复


发帖规则
不可以发表新主题
不可以发表回复
不可以上传附件
不可以编辑自己的帖子

启用 BB 代码
论坛启用 表情符号
论坛启用 [IMG] 代码
论坛禁用 HTML 代码



所有时间均为北京时间。现在的时间是 07:05


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