MATLAB之最干货(四)

MATLAB之最干货(四)——内置函数

到这里,我要分享的内容部分已经过半,今天,我带来的是MATLAB中的内置函数部分,肘子~~

一. 多项式

1. 创建

p = [1,2,3,4];  % 系数向量,按x降幂排列,最右边是常数
f1 = poly2str(p,'x');  % 生成好看的字符串 f1 = x^3 + 2 x^2 + 3 x + 4,不被认可的运算式
f2 = poly2sym(p);  % 生成可用的符号函数 f2 = x^3 + 2*x^2 + 3*x + 4

2. 求值

x = 4;
y1 = poly2val(p,x);  % 代入求值;若x1为矩阵,则对每个值单独求值

3. 求根

r = roots(p);
p0 = ploy(r);  % 由根求系数,结果为系数矩阵

二. 数据插值

1. 一维插值 — %yi = interp1(X, Y, xi, ‘method’)

X = [-3,-1,0,1,3];
Y = [9,1,0,1,9];   % XY为已知横纵坐标向量
y2 = interp1(X,Y,2);  % 差值预估在x=2的y的值,x不能超过已知范围(此处x<3)
y2m = interp1(X,Y,2,'spline');  %用spline方法(三次样条)差值预估在x = 2 的 y 的值

2. 二维插值 —%zi = interp1(X, Y, Z, xi, yi, ‘method’)

三. 数据统计

1. 准备数据

> X = [2, 3, 9, 15, 6, 7, 4];
> A = [1, 7, 2; 9, 5, 3; 8, 4 ,6];
> B = [1, 7, 3; 9, 5, 3; 8, 4 ,6];

2. 数据统计

(1)矩阵的最大值,最小值

y = max(X);  % 求矩阵X的最大值  min同理
[y,k] = max (X);   % 求最大值, k为该值的角标
[y,k] = max (A,[],2);  % A是矩阵,'2'时返回y每一行最大元素构成的列向量,k元素所在列;  '1'时同理

(2)均值与中值

y = mean (X);   % 均值
y = median (X);  % 中值
y = mean (A,2);  % '2'时返回y每一行均值构成的列向量;'1'时同理
y = median(A,2);  % '2'时返回y每一行中值构成的列向量;'1'时同理

(3)排序

y = sort(A,1,'ascend');   % sort(矩阵, dim, 'method')dim为1按列排序,2按行排序;ascend升序,descend降序

在这里插入图片描述

[Y, I] = sort(A, 1, 'ascend');    % I保留了元素之前在A的位置

在这里插入图片描述
(4)求和,求积, 累加,累乘

y = sum (X);  %求和
y = prod(X);  %求积
y = cumsum(X);  %累加
y = cumprod(X);  %累乘

四.数值计算

1. 最(极)值

多元函数在给定初值附近找最小值点

 x = fminsearch(fun, x0);

函数零点

  x = fzero(fun, x0);  % 在给定初值x0附近找零点

到这儿这一小节就结束了,大家看不懂的地方一定要去matlab上进行验证,有的东西确实比较抽象,但是执行出的结果会非常的直观,可以帮助大家更好的理解。
拜拜~~~

猜你喜欢

转载自blog.csdn.net/weixin_49005845/article/details/109773796