24小时热门版块排行榜    

查看: 489  |  回复: 4
当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖

btliu

金虫 (小有名气)

[求助] Matlab急求帮助!

如下面数据所示,如何通过步数和循环数,计算出对应第一列任意位置处的点数(与第一列数对应)。我下面写了个东西,想求和,但始终不对!谢谢!

x = data(:,1);% 点数
z=data(:,2);% 步数
u=data(:,3);% 循环数

for i=1:max(u)  % cycle index
  for n = 1:max(z) % step index
     for m = 1:length(find(data(:,2)== n))
          k =sum(m)
     end
   end
end


点数        步数        循环数
1        1        1
2        1        1
3        2        1
4        2        1
5        2        1
6        2        1
7        2        1
8        2        1
9        2        1
10        2        1
11        2        1
12        2        1
13        2        1
14        2        1
15        2        1
16        2        1
17        2        1
18        2        1
19        3        1
20        3        1
21        3        1
22        3        1
23        3        1
24        3        1
25        3        1
26        3        1
27        3        1
28        3        1
29        3        1
30        3        1
31        3        1
32        3        1
33        3        1
34        3        1
35        4        1
36        4        1
37        4        1
38        4        1
39        4        1
40        4        1
41        4        1
42        4        1
43        4        1
44        4        1
45        4        1
46        4        1
47        4        1
48        4        1
49        4        1
50        4        1
51        2        2
52        2        2
53        2        2
54        2        2
55        2        2
56        2        2
57        2        2
58        2        2
59        2        2
60        2        2
61        2        2
62        2        2
63        2        2
64        2        2
65        2        2
66        2        2
67        3        2
68        3        2
69        3        2
70        3        2
71        3        2
72        3        2
73        3        2
74        3        2
75        3        2
76        3        2
77        3        2
78        3        2
79        3        2
80        3        2
81        3        2
82        3        2
83        4        2
84        4        2
85        4        2
86        4        2
87        4        2
88        4        2
89        4        2
90        4        2
91        4        2
92        4        2
93        4        2
94        4        2
95        4        2
96        4        2
97        4        2
98        4        2
99        2        3
100        2        3
101        2        3
102        2        3
103        2        3
104        2        3
105        2        3
106        2        3
107        2        3
108        2        3
109        2        3
110        2        3
111        2        3
112        2        3
113        2        3
114        2        3
115        3        3
116        3        3
117        3        3
118        3        3
119        3        3
120        3        3
121        3        3
122        3        3
123        3        3
124        3        3
125        3        3
126        3        3
127        3        3
128        3        3
129        3        3
130        3        3
131        4        3
132        4        3
133        4        3
134        4        3
135        4        3
136        4        3
137        4        3
138        4        3
139        4        3
140        4        3
141        4        3
142        4        3
143        4        3
144        4        3
145        4        3
146        4        3
回复此楼

» 猜你喜欢

» 本主题相关价值贴推荐,对您同样有帮助:

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

libralibra

至尊木虫 (著名写手)

骠骑将军

【答案】应助回帖

★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★
jjdg: 金币+1, 感谢提供建议 2012-12-08 01:09:50
btliu: 金币+20, ★★★很有帮助, 谢谢你提供的思路。点数的位置,实际上为实验数据。我希望用循环条件语句,处理该实验数据。 2012-12-09 00:07:27
引用回帖:
3楼: Originally posted by btliu at 2012-12-07 20:54:19
谢谢您的回复!我的问题是想通过第三列的循环数和第二列步数,直接把第一列的点数表示出来。如循环数为1、步数为4时,第2个4(相当于‘第4步的第2小步’)对应点数为36;如循环数为1、步数为4时,第3个4(相当于‘ ...

那你写代码干啥?
那个矩阵就是数据,你需要第次循环,第几步,第几个数自己找就行了呀
循环数为1,步数为4,第二个4对应的点数不就是
CODE:
curdata = data(data(:,3)==1,1:2);
point = curdata(curdata(:2)==4,1);
point(2)

» 本帖已获得的红花(最新10朵)

matlab/VB/python/c++/Java写程序请发QQ邮件:790404545@qq.com
4楼2012-12-07 22:55:38
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
查看全部 5 个回答

libralibra

至尊木虫 (著名写手)

骠骑将军

【答案】应助回帖


感谢参与,应助指数 +1
jjdg: 金币+1, 感谢提供建议 2012-12-08 01:09:43
你应该把问题描述清楚,是不是要对应每个循环次数下,不同步数对应的点数求和?
CODE:
data = [1        1        1
2        1        1
3        2        1
4        2        1
5        2        1
6        2        1
7        2        1
8        2        1
9        2        1
10        2        1
11        2        1
12        2        1
13        2        1
14        2        1
15        2        1
16        2        1
17        2        1
18        2        1
19        3        1
20        3        1
21        3        1
22        3        1
23        3        1
24        3        1
25        3        1
26        3        1
27        3        1
28        3        1
29        3        1
30        3        1
31        3        1
32        3        1
33        3        1
34        3        1
35        4        1
36        4        1
37        4        1
38        4        1
39        4        1
40        4        1
41        4        1
42        4        1
43        4        1
44        4        1
45        4        1
46        4        1
47        4        1
48        4        1
49        4        1
50        4        1
51        2        2
52        2        2
53        2        2
54        2        2
55        2        2
56        2        2
57        2        2
58        2        2
59        2        2
60        2        2
61        2        2
62        2        2
63        2        2
64        2        2
65        2        2
66        2        2
67        3        2
68        3        2
69        3        2
70        3        2
71        3        2
72        3        2
73        3        2
74        3        2
75        3        2
76        3        2
77        3        2
78        3        2
79        3        2
80        3        2
81        3        2
82        3        2
83        4        2
84        4        2
85        4        2
86        4        2
87        4        2
88        4        2
89        4        2
90        4        2
91        4        2
92        4        2
93        4        2
94        4        2
95        4        2
96        4        2
97        4        2
98        4        2
99        2        3
100        2        3
101        2        3
102        2        3
103        2        3
104        2        3
105        2        3
106        2        3
107        2        3
108        2        3
109        2        3
110        2        3
111        2        3
112        2        3
113        2        3
114        2        3
115        3        3
116        3        3
117        3        3
118        3        3
119        3        3
120        3        3
121        3        3
122        3        3
123        3        3
124        3        3
125        3        3
126        3        3
127        3        3
128        3        3
129        3        3
130        3        3
131        4        3
132        4        3
133        4        3
134        4        3
135        4        3
136        4        3
137        4        3
138        4        3
139        4        3
140        4        3
141        4        3
142        4        3
143        4        3
144        4        3
145        4        3
146        4        3];
for u=min(data(:,3)):max(data(:,3))
    curdata = data(data(:,3)==u,1:2);
    for z=min(curdata(:,2)):max(curdata(:,2))
        x = sum(curdata(curdata(:,2)==z,1));
        fprintf(1,'cycle index = %d, step index = %d, point number sum = %d\n',u,z,x);
    end
end

结果:
CODE:
cycle index = 1, step index = 1, point number sum = 3
cycle index = 1, step index = 2, point number sum = 168
cycle index = 1, step index = 3, point number sum = 424
cycle index = 1, step index = 4, point number sum = 680
cycle index = 2, step index = 2, point number sum = 936
cycle index = 2, step index = 3, point number sum = 1192
cycle index = 2, step index = 4, point number sum = 1448
cycle index = 3, step index = 2, point number sum = 1704
cycle index = 3, step index = 3, point number sum = 1960
cycle index = 3, step index = 4, point number sum = 2216
>>  

matlab/VB/python/c++/Java写程序请发QQ邮件:790404545@qq.com
2楼2012-12-07 17:42:48
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

btliu

金虫 (小有名气)

引用回帖:
2楼: Originally posted by libralibra at 2012-12-07 17:42:48
你应该把问题描述清楚,是不是要对应每个循环次数下,不同步数对应的点数求和?
data = ;
for u=min(data(:,3)):max(data(:,3))
    curdata = data(data(:,3)==u,1:2);
    for z=min(curdata(:,2)):max(curdata ...

谢谢您的回复!我的问题是想通过第三列的循环数和第二列步数,直接把第一列的点数表示出来。如循环数为1、步数为4时,第2个4(相当于‘第4步的第2小步’)对应点数为36;如循环数为1、步数为4时,第3个4(相当于‘第4步的第3小步’)对应点数为37...。请再次给予指导,谢谢!
3楼2012-12-07 20:54:19
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

btliu

金虫 (小有名气)

送鲜花一朵
引用回帖:
4楼: Originally posted by libralibra at 2012-12-07 22:55:38
那你写代码干啥?
那个矩阵就是数据,你需要第次循环,第几步,第几个数自己找就行了呀
循环数为1,步数为4,第二个4对应的点数不就是
curdata = data(data(:,3)==1,1:2);
point = curdata(curdata(:2)==4,1);
poi ...

请问libralibra,你的方法很容易确定点的具体位置。但我现在不知如何通过增加循环数和步数的条件语句,有选择地获取数据点。请指导,谢谢!
5楼2012-12-09 00:39:35
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[找工作] 售SCI文章,我:8O5.5.1.O.54,科目齐全,可+急 +4 k0dTPqJtl0jt 2026-08-14 4/200 2026-08-15 02:21 by 4wMiSEwB6436
[基金申请] 小木虫上这么多卖论文的,真有人买论文么?感觉没必要啊 +11 Tide man 2026-08-10 12/600 2026-08-15 02:12 by home3163
[考博] 售SCI文章,我:8O.5.5.1O.54,科目全,可十急 +4 k0dTPqJtl0jt 2026-08-14 4/200 2026-08-15 01:40 by 4wMiSEwB6436
[基金申请] 各位道友,我要去昆明玩几天,回来见。 +7 Tide man 2026-08-14 8/400 2026-08-15 01:11 by arzu_hma
[考研] 售SCI文章,我:8O5.5.1.O.54,科目齐全,可+急 +3 7lpolszZVXgi 2026-08-14 5/250 2026-08-15 00:52 by 4wMiSEwB6436
[考研] 售SCI一区T0P文章,我:8.O55.1.O.54,科目全,可十急 +3 HFw0lei2R37i 2026-08-14 7/350 2026-08-15 00:40 by 4wMiSEwB6436
[论文投稿] 售SCI一区文章,我:8O5.5.1.O5.4,科目全,可伽急 +3 HFw0lei2R37i 2026-08-14 5/250 2026-08-15 00:16 by 4wMiSEwB6436
[考研] 售SCI一区T0P文章,我:8.O.55.1.O.54,科目齐全,可+急 +4 HFw0lei2R37i 2026-08-14 8/400 2026-08-15 00:16 by 4wMiSEwB6436
[基金申请] 欢迎发来filecode的Mz6后的代码验证其规律 +23 医学老男孩 2026-08-13 49/2450 2026-08-14 20:02 by zhaifei
[基金申请] 哪位老哥知道今年的国自然具体哪一天放榜? +5 Ldrop2023 2026-08-13 5/250 2026-08-14 18:48 by ssxclkj
[硕博家园] 读博的好处 +4 lnee 2026-08-11 4/200 2026-08-14 10:20 by ahsoarli
[基金申请] FileCode能看出啥? +10 要乐观耀哥 2026-08-10 32/1600 2026-08-14 09:37 by 要乐观耀哥
[基金申请] 结合人工智能,周易传统文化,filecode打分制来了,3分以上希望很大。 +3 Tide man 2026-08-12 4/200 2026-08-13 08:35 by ZJTJZ
[基金申请] 综述论文作为代表作会不会影响评审专家的印象分? +11 yufeiwaner 2026-08-09 13/650 2026-08-12 08:17 by yufeiwaner
[基金申请] 什么时候出结果,有咨询渠道??? +3 Tide man 2026-08-11 3/150 2026-08-11 17:54 by kudofaye
[基金申请] 据悉今年马上要出结果了 +7 瞬息宇宙 2026-08-10 8/400 2026-08-10 12:42 by Vivilian
[基金申请] 2026国自然放榜时间 +9 布布和一二 2026-08-08 9/450 2026-08-10 11:22 by xxxx2020
[基金申请] 这样的filecode谁见过 +11 布布和一二 2026-08-08 22/1100 2026-08-10 11:10 by wmfsnow
[基金申请] 面上项目filecode邪修 +5 西山十月 2026-08-09 7/350 2026-08-10 07:32 by 仁砚薪传
[基金申请] 关于filecode,很负责任的告诉大家 +6 爱看书的可乐 2026-08-08 7/350 2026-08-08 22:13 by a_niu
信息提示
请填处理意见