matlab 行数列用循环提取。

matlab 行数列用循环提取。,第1张

后面这部分是要把y中的内容一个一个取出来以后判断是否在2/5和3/5之间,如果的话b就加1么?如果是这样的话,可以这样写:

for

i=1:length(y)

a=y(i);

if

a>2/5&a<3/5

b=b+1;

end

end

可以利用sort函数给数列a从小到大排列,找前几个最大的。如下:

[b,i]=sort(a)。b为从小到大的数字,i为对应位置。要找前3个,如下输入:

>>

a=[3,15,6,21,18,2,18,19,1,4,7,29,

21

,23

,29

,23,

14,

6,

9

,29

,31];

>>

[b,i]=sort(a)

b

=

columns

1

through

12

1

2

3

4

6

6

7

9

14

15

18

18

columns

13

through

21

19

21

21

23

23

29

29

29

31

i

=

columns

1

through

12

9

6

1

10

3

18

11

19

17

2

5

7

columns

13

through

21

8

4

13

14

16

12

15

20

21

>>

b(19:21)

ans

=

29

29

31

>>

i(19:21)

ans

=

15

20

21

N=100;u0=05;p0=05;

u=rand(N,1);

p=rand(2N,1);

for i=1:N

    e(i) = mean((abs(u-u0)/u0-abs(p(1+i:N+i)-p0)/p0)^2);

end

m=1:N;

plot(m,e);

xlabel('m');

ylabel('E_m');

a = randint(1,10,[0 3])

b = dec2bin(a,3);

b(:,1) = ' ';

c = reshape(b',1,[])

num0 = length(find(a==0));

num00 = length(regexp(c,'00'));

num1 = length(find(a==1));

num01 = length(regexp(c,'01'));

num2 = length(find(a==2));

num10 = length(regexp(c,'10'));

num3 = length(find(a==3));

num11 = length(regexp(c,'11'));

[num0 num1 num2 num3;num00 num01 num10 num11]

a =

0 1 2 1 2 0 0 3 3 3

c =

00 01 10 01 10 00 00 11 11 11

ans =

3 2 2 3

3 2 2 3

程序如下:

close all;clear;clc;

%下面是从txt中读取数列,如果是自己已经输入,可以直接从下面注释掉的语句开始

b = fopen('datatxt','r');

a = fread(b,'char');

a = a';

fclose(b);

%a = '0101011010100101010101001010010';

[st1,ed1] = regexp(a,'00','start','end'); %st1,ed1分别由数列中00出现的开始位置和结束位置生成的矩阵

[st2,ed2] = regexp(a,'01','start','end'); %类上

[st3,ed3] = regexp(a,'10','start','end'); %类上

[st4,ed4] = regexp(a,'11','start','end'); %类上

[cs] = [length(st1) length(st2) length(st3) length(st4)]; %'00''01''10''11'出现次数也就是它们对应st或者ed的矩阵长度;所以cs就是它们出现次数集合

这个是我现学现写的程序,不知道好不好,你自己试试

我的数列是 0101011010100101010101001010010

结果是 cs =

3 13 13 1

以上就是关于matlab 行数列用循环提取。全部的内容,包括:matlab 行数列用循环提取。、matlab中对一个数组求最大的几个数、matlab 求解数列等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://www.54852.com/web/9651517.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-30
下一篇2023-04-30

发表评论

登录后才能评论

评论列表(0条)

    保存