matlab的使用

2、随机数

从一定范围内取出一个随机数
a=randperm(80,1);
产生整型随机矩阵,或数组
%产生一个110之间的随机矩阵,大小为2x5;
s1 = randi(10,2,5);

%产生一个-55之间的随机矩阵,大小为1x10;
s2 = randi([-5,5],1,10);
从矩阵中随机选300行
test_title1 = test_data(randi(size(test_word,1),1,300),:);

size(test_word,1)意思为,计算test_word矩阵的行数

3、矩阵操作

矩阵索引
v(3)     		%取出第三个元素
v([1 5 6]) 		%取出第156个元素
v(3 : 7) 		% 取出从第3到第7个的所有元素
v([5:8  1:4]) 	% 取出v的两个间断区域元素
v(end) 			% 取出最后一个元素
v(2:end-1) 		% 取出从第2个到向量倒数第2个的所有元素
v(1:2:end) 		% 取出奇数下标的元素
v(end:-1:1) 	% 逆序取出所有元素

v([2 3 4]) = [10 15 20]	% 替代v中一些特定元素
v([2 3]) = 30 			%2和第3元素重新赋值为30
常用矩阵生成
1矩阵:ones(m,n)0矩阵:zeros(m,n)

下三角矩阵:tril( )

上三角矩阵:triu( )
将一维矩阵转换成二维矩阵
A = 1:10;
B = reshape(A,[5,2])
将二维矩阵转换成一维矩阵
a=[1,2;3,4;];
b=a(:);
c=reshape(a,[],1);

但是注意,是按列来捋直的,可以先转置一下

如何在矩阵行拼接
 a=[1 2 3 4];
 b=[5 6 7 8];
 c=[a;b];
如何矩阵列拼接
 a=[1 2 3 4];
 b=[5 6 7 8];
 c=[a b];
如何拼接长度不同的矩阵----使用元胞
part = {a; b; c; d};

访问使用:part{i} 或 part{i, j}
在数组的某一位置添加一个数据
message = [message(1:i), mod(noise, 20), message(i+1:end)];
删除数组中重复的元素
ascii_contained = unique(ascii_data_cell{1});

注意:unique的功能是删除重复的元素并排序,最后的结果是排好序的

向量反转
行向量就用fliplr函数 列向量就用flipud函数
数组正排序 逆排序
sort(A) 正排序
sort(A,'descend') 逆排序

4、矩阵运算

计算矩阵内元素个数
a = [ 1 2 3
4 5 6 ]
length(a) = 3        

注意:length()返回的是列数

计算二维矩阵行数和列数
[m,n]=size(a)
所有多列同时按行求和
sum_arr_output(:, i) = sum(text_input(:, i:i + 14), 2); 
去掉重复元素、行向量或列向量
1)B = unique(A)
         获取矩阵A 的不同元素构成的向量,其中B可能是行向量也可能是列向量。
         
(2)B = unique(A,'rows')
         获取矩阵A的不同行向量构成的矩阵。

(3[ C,IA,IC ] = unique(A)\unique(A,'rows')
          IA为矩阵C中的元素在矩阵A中的位置,
          IC为矩阵A中的元素在矩阵C中的位置。

5、函数

函数文件编写格式
function y = capture_system(x)
函数内容
sum_arr_in = x;
返回值
y = [[sum_max; sum_max_index] [sum_min; sum_min_index]];

6、文件操作

读取文件
text_input = fopen('test_text.txt', 'r');
line = fgets(text_input);
line3 = fgetl(text_input);%fgetl 从文件中读取行,不带文件换行符
fclose(text_input);
字符串和ASCII码的转换
字符串转ASCII码:abs,如:abs('a');abs('what');

ASCII码转字符串:char,如:char(97);char([97,98,99]);

7、画图

开辟新的图形窗口
figure

8、获得输入

analogParam = input('please input\n');

f_s = analogParam(1);       % 抽样频率
f_p = analogParam(2);       % 通带截止频率
f_st = analogParam(3);      % 阻带起始频率
reduction = analogParam(4); % 阻带最小衰减
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

匿名匿名匿名11

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值