matlab常用语法

最近接触matlab程序,这里记录一下matlab常用语法。

目录

1、find函数

2、ones()

3、reshape(A,m,n)

 4、A(1:2,:)

5、dec2hex

 6、十六进制转浮点数

7、[]、{}、()区别

8、均值、标准差

9、findpeaks函数

10、数组


1、find函数

查找矩阵X中的非零元素,返回这些元素的下标。

A=[1,0;2,3];
find(A)

ans =

     1
     2
     4

find(A==2):查找A中等于2的元素,并返回下标。

A=[1,0,2,3,2,7];
find(A==2)

ans =

     3     5

2、ones()

生成全部为1的矩阵

len=8;
xdata_dec=ones(len,1);
disp(xdata_dec)

     1
     1
     1
     1
     1
     1
     1
     1

3、reshape(A,m,n)

矩阵重排列,改变矩阵行列数,返回m*n的矩阵,m为行,n为列

A=[1,0;2,3;5,7];
disp(A)
B=reshape(A,2,3);
disp(B)

     1     0
     2     3
     5     7

     1     5     3
     2     0     7

 4、A(1:2,:)

表示取矩阵1到2行的全部元素

A=[1,0;2,3;5,7];
B=A(1:2,:);
disp(B)

     1     0
     2     3

A(2,end):返回矩阵A第二行最后一列的元素

A=[1,0;2,3;5,7];
disp(A)
B=A(2,end);
disp(B)

     1     0
     2     3
     5     7

     3

A(:,end):返回矩阵A最后一列元素

A=[1,0;2,3;5,7];
disp(A)
B=A(:,end);
disp(B)

     1     0
     2     3
     5     7

     0
     3
     7

5、dec2hex

将十进制转换为十六进制;hex2dec:将十六进制转换为十进制。

A=[11,34,56];
B=dec2hex(A);
disp(B)

0B
22
38

 6、十六进制转浮点数

b = ['C8','AC','2C','3F'];
c = typecast(uint32(hex2dec(b)),'single');
disp(c)

-3.5261e+05

十六进制与浮点数转换工具 tools

浮点数转换为32位十六进制:

a=-7.0000e-06;
b=sprintf('%tx',single(a));
disp(b)

b6eae18b

小端模式:内存的低地址存数据的低位,内存的高地址存数据的高位,低低高高;大端模式:内存的低位存数据的高位,内存的高地址存数据的低位,低高高低。

7、[]、{}、()区别

[ ] 用它来存储矩阵和向量。

a=[1,2,3]  
a=[1 2 3;4 5 6;7 8 9]

{ } 大括号,用于cell(单元数组)型数组的分配或引用。

 c={'chian','中国',[1 2 3 4]}

( )小括号,用于引用数组的元素。

X(3)表示X的第三个元素
%创建一个两行三列的单元数组
a = cell(2,3); 
%第一行第一列的元素是[1 2 3]   
a(1,1)= [1 2 3]; 

8、均值、标准差

A = [1; 1.2; 1.0;1.8;1.6;1.4;1.6;2.3;1.5;3.5;2.87;2.1;2.2;2.3;2.5;2.98; 3.9;3.67;3.66;7;5.3;3.1;3.64;3.76;3.6;10];
% 均值  
mu = mean(A); 

% 标准差 
sigma = std(A); 

% 创建一个逻辑矩阵,其中true表示A中对应位置的值小于等于2  
idx = A <= 2; 
B = A(idx);  
disp(B)

 输出:

1.0000
1.2000
1.0000
1.8000
1.6000
1.4000
1.6000
1.5000

9、findpeaks函数

用于查找信号中的峰值(peaks)。

10、数组

数组追加:

% 假设原始数组为data
data = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15];
 
% 追加值
data = [data, 16]

读取数组最后一个值与倒数第二个值:

% 假设原始数组为data
data = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15];
 
% 读取数组最后一个值
disp(data(end))

% 读取数组倒数第二个值
disp(data(end-1))

去除前十个值:

% 假设原始数组为vec
vec = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15];
 
% 去除前10个值
new_vec = vec(11:end);
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值