Matlab中min()、max()、mod()、fprintf()、linspace()函数的使用
@ 符号可以将函数功能传递给字符:
clear,clc;
x = [-1 2 -4 5];
good = @fc;
y = good(x)
子函数:
function a = fc(x)
a = abs(x)
end
min()函数与max()函数的作用:
主要是获取数组中最小值及其对应位置、最大值及其对应位置。
可以参照下例进行理解:
close all;clear;clc;
x = [11 8 2 3 4 5 6];
[value_min index_min] = min(x)
[value_max index_max] = max(x)
mod函数的作用:
简单的说mod(a,b)就是a除以b的余数。如:mod(10,3)=1,mod(14,6)=2。
fprintf()函数的作用:打印,通过下面一个简单示例说明:
%% 打印字符串对应的数据
clear,clc
a = 10;b = 20;c = 30;d = 40;
fprintf('小王:%5.0f \n 小花:%5.2f \n 小张:%5.3f \n 小李:%5.3f',a,b,c,d);
linspace()函数的作用:主要是细化数组,常用于插值计算。
a = linspace(1,10,19) % 前两个数为首、末值,第三个数为细化后数组数量。
size()函数的作用:取矩阵的行数和列数。
clear;clc;
A=[1 1 1 1;2 2 2 2;3 3 3 3] % 3×4矩阵
s=size(A) % 第一个数为行数,第二个数为列数
[a b]=size(A) % a=3 b=4
a=size(A,1) % 1表示行数
b=size(A,2) % 2表示列数
a=length(A) % 数组中行数和列数较大值
b=max(size(A)) % 数组中行数和列数较大值
mapminmax()函数的作用:对数据进行规范化。
clear,clc
x1 = [1 2 4 1 2]; % 2*(x-xmin)/(xmax-xmin)+(-1)
x2 = [5 2 3];
[y1,ps] = mapminmax(x1); % f: 2*(x-xmin)/(xmax-xmin)+(-1);
% y1(1) = 2*(1 - 1)/(4-1)+(-1) = -1;
% y(2) = 2*(2 - 1)/(4-1)+(-1) = -1/3 = -0.3333;
% y(3) = 2*(4-1)/(4-1)+(-1) = 1;
y2 = mapminmax('apply',x2,ps); % 采用同样的规范化映射:f: 2*(x-1)/(4-1)+(-1)
xtt = mapminmax('reverse',y1,ps) % X = mapminmax('reverse',Y,PS)的作用就是进行反规范化
ind2vec()函数、vec2ind()函数
%% 按照索引创建稀疏矩阵
clear;clc;
A=[1 3 2 2 2 1 2 1];
B=ind2vec(A)
%% 向量变索引
clear;clc;
T(1,:)=[0 1 0 0 1 0];T(2,:)=[1 0 1 1 0 0];T(3,:)=[0 0 0 0 0 1];
vec2ind(T)
logspace(a,b,n),其中a、b、n分别表示开始值(10^a)、结束值(10^b)、元素个数(n)
clear;clc;
a = logspace(1,5,5)
strcat()函数:横向连接字符串
%% strcat()函数:横向连接字符串
clear,clc;
s1 = ['a' 'b' '3'];
s2 = ['4 5 6'];
combinedStr= strcat(s1, s2)
strcmp()函数是用于做字符串比较的函数
%% strcmp是用于做字符串比较的函数
% 示例1
clear,clc;
s1='hello';
s2='hello';
s3='matlab';
TF1=strcmp(s1,s2)
% 示例2
s='hello';
c={'hello','matlab';'HELLO','matlab'};
TF=strcmp(s,c)
% 示例3
c1={'hello','matlab';'HELLO','matlab'};
c2={'hello','matlab';'hello','MATLAB'};
TF=strcmp(c1,c2)
find()函数的用法:
逐列读取,r为非零元素行索引,c为非零元素列索引,v为非零元素数组
X = [3 2 0; -5 0 7; 0 0 1];
[r,c,v] = find(X)
cumsum()函数的用法
%% cumsum函数的用法
a = [1 2 3;4 5 6;7 8 9]
b = cumsum(a)