MATLAB编程与工程应用——第6章 MATLAB数据分析与多项式计算

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
MATLAB数据分析与多项式计算
一、最大值和最小值
格式2 2. 格式2 [y,I]=max(x,[],dim) [y,I]=min(x,[],dim)
x是一个矩阵,dim取1或2。 dim取1时,该函数和max(x)完全相同; dim取2时,该函数返回一个列向量,其第i个元 素是x矩阵的第i行上的最大/小值。 分别求3 矩阵x 例6.2 分别求3×4矩阵x中各列和各行元素中的 最大值,并求整个矩阵的最大值和最小值。 最大值,并求整个矩阵的最大值和最小值。 exp6_2.m
MATLAB数据分析与多项式计算
6.1 数据统计处理
五、排序
[y,I]=sort(x,dim) 如果x是向量,则y为x中各元素按升序排列而成的新向量 如果x是矩阵,且dim=1,y为x按列排序所得的矩阵 如果x是矩阵,且dim=2,y为x按行排序所得的矩阵 不给出dim参数,则dim缺省为1 I记录Y中元素在A中的位置 例6.8 对二维矩阵做各种排序 exp6_8.m
MATLAB数据分析与多项式计算
一、最大值和最小值
格式3 3. 格式3 U=max(x,y) U=min(x,y) 如果x为标量,则y可为标量、向量或矩阵 如果x为向量或矩阵,则y可为标量或与x同维的向量或 矩阵 x,y是两个同型的向量或矩阵,结果U是与x,y同型的向 量或矩阵,U的每个元素等于x,y对应元素的较大/小者。 如果y是一个标量,结果U是与x同型的向量或矩阵,U 的每个元素等于x对应元素和y中的较大/小者。 例6.3 求两个2×3矩阵x, y所有同一位置上的较大元素 求两个2 矩阵x, y所有同一位置上的较大元素 构成的新矩阵p 构成的新矩阵p。exp6_3.m
MATLAB数据分析与多项式计算
6.3 曲线拟合
曲线拟合,其目的就是在众多的样本点中进行拟合,找 曲线拟合 出满足样本点分布的函数。这在分析实验数据,将实验 数据做解析描述时非常有用。 多项式拟合: 一、多项式拟合:polyfit 命令格式: p=polyfit(x,y,n) 其中x和y为样本点向量,n为所求多项式的阶数,p为求 出的多项式。此函数采用最小二乘法来进行拟合。 例 exp6_11.m
6.1 数据统Байду номын сангаас处理
累加和、 三、累加和、累乘积
y=cumsum(x,dim) y=cumprod(x,dim) 如果x是一个向量,则y为x的累加和/积向量, 如果x是一个矩阵,且dim=1,则y是一个矩阵,其第i列 为x第i列的累加和/积列向量 如果x是一个矩阵,且dim=2,则y是一个矩阵,其第i行 为x第i行的累加和/积行向量 求向量1:10 1:10的累加和向量 例6.6 求向量1:10的累加和向量 exp6_6.m
MATLAB数据分析与多项式计算
数据拟合函数表
函数 cfit fit fitoptions fittype get/set smooth confint differentiate integrate cttool 功能描述 产生拟合的目标 拟合数据 产生或修改拟合选项 产生目标的拟合形式 返回/ 返回/设置 拟合曲线的属性 平滑响应数据 计算拟合系数估计值的置信区间边界 对拟合结果求微分 对拟合结果求积分 找开曲线拟合工具
MATLAB数据分析与多项式计算
一、曲线拟合
非线性拟合: 二、非线性拟合:nlinfit
[Beta,R,J] = nlinfit(x,y,fun,Beta0)
三、非线性最小方差拟合:lsqcurvefit 非线性最小方差拟合:
beta= lsqcurvefit(FUN,beta0,X,Y) 其中 x,y为样本点向量, x,y为样本点向量 为样本点向量, fun为待拟合的函数名(以fun以Beta为参数) fun为待拟合的函数名 为待拟合的函数名( fun以Beta为参数 为参数) Beta0为拟合初值,Beta为拟合值 Beta0为拟合初值 Beta为拟合值 为拟合初值, R为残值,J为Jacobian矩阵 为残值, Jacobian矩阵 例 exp6_12.m
MATLAB数据分析与多项式计算
一、一维数据插值
某观测站测得某日6:00时至18:00时之间每隔2 6:00时至18:00时之间每隔 例6.9 某观测站测得某日6:00时至18:00时之间每隔2小时 的室内外温度(℃) (℃), 的室内外温度(℃),用3次样条插值分别求得该日室内外 6:30至17:30时之间每隔 小时各点的近似温度(℃) 时之间每隔2 (℃)。 6:30至17:30时之间每隔2小时各点的近似温度(℃)。 解:设时间变量h为一行向量,温度变量t为一个两列矩阵, 其中第一列存放室内温度,第二列储存室外温度。命令 如下: h =6:2:18; t=[18,20,22,25,30,28,24;15,19,24,28,34,32,30]'; XI =6.5:2:17.5 YI=interp1(h,t,XI,‘spline spline’) %用 YI=interp1(h,t,XI, spline ) %用3次样条插值计算 exp6_9.m
MATLAB数据分析与多项式计算
6.2 数据插值
一、一维数据插值
y1=interp1(x,y,x1,'method') 函数根据x,y的值,计算函数在x1处的值。 x,y是两个等长的已知向量,分别描述采样点和样本值, x1是一个向量或标量,描述欲插值的点,x1的取值范围 不能超出X的给定范围,否则,会给出“NaN”错误。 y1是一个与x1等长的插值结果。 method是插值方法,允许的取值有‘linear’(线性插值, 默认)、‘nearest’(最近插值)、 ‘spline’(三次样 条插值)等。
MATLAB数据分析与多项式计算
MATLAB数据分析与多项式计算 第6章 MATLAB数据分析与多项式计算
6.1 6.2 6.3 6.4 数据统计处理 数据插值 曲线拟合 多项式计算
MATLAB数据分析与多项式计算
6.1 数据统计处理
一、最大值和最小值
格式1 1. 格式1 [y,I]=max(x) [y,I]=min(x) x可以是向量,也可以是矩阵。 如果x是向量,则输出y是一个数,表示向量x中所有元素 的最大/小值;输出I是最大/小元素的下标。 如果x是矩阵,则输出y是一个行向量,其第i个元素为矩 阵x第i列所有元素的最大/小值;输出I是一个行向量, 其第i个元素中x的第i列中最大/小元素的行号。 如果x中包括复数元素,则按模取最大/小值。 求向量的最大值/ 例6.1 求向量的最大值/最小值 exp6_1.m
MATLAB数据分析与多项式计算
6.1 数据统计处理
四、标准方差与相关系数
1. 标准方差 y=std(x,flag,dim) x为向量,y为标量,是x中所有元素的标准方差 x为矩阵,且dim=1,y为行向量,为x各列元素的标准方差 x为矩阵,且dim=2,y为列向量,为x各行元素的标准方差 否则 flag=0,则 n n
MATLAB数据分析与多项式计算
二、多项式运算
4.求多项式函数值polyval(p,n):将值n代入多项式求解。 4.求多项式函数值polyval(p,n) 求多项式函数值polyval(p,n) polyval(a,2)=11 5. 求多项式的根 roots(p):求多项式的根,根用列向量表示。 roots(p): poly(r): poly(r) 求出根为r的多项式。 例6.13 多项式运算 exp6_13.m
MATLAB数据分析与多项式计算
6.2 数据插值
二、二维数据插值
z1=interp2(x,y,z,x1,y1,'method') 其中x,y是两个向量,分别描述两个参数的采样点, z是与参数采样点对应的函数值, x1,y1是两个向量或标量,描述欲插值的点。 z1是根据相应的插值方法得到的插值结果。 method的取值与一维插值函数相同。 x,y,z也可以是矩阵形式。 x1,y1的取值范围不能超出x,y的给定范围,否则,会给 出“NaN”错误。
MATLAB数据分析与多项式计算
6.1 数据统计处理
求和、 二、求和、积、均值与中值
1. 求和 y=sum(x,dim) 如果x是向量,则y为x中各元素之和 如果x是矩阵,且dim=1,y是一个行向量,其第i个元素 为x的第i列之和 如果x是矩阵,且dim=2,y是一个列向量,其第i个元素 为x的第i行之和 不给出dim参数,则dim缺省为1 求矩阵A每行元素之和及全部元素之和。 例6.4 求矩阵A每行元素之和及全部元素之和。exp6_4.m
MATLAB数据分析与多项式计算
二、二维数据插值
某实验对一根长10 10米的钢轨进行热源的温度传播测 例6.10 某实验对一根长10米的钢轨进行热源的温度传播测 表示测量点0:2.5:10( 0:2.5:10(米 试。用x表示测量点0:2.5:10(米),用h表示测量时间 0:30:60(秒 表示测试所得各点的温度(℃) (℃)。 0:30:60(秒),用T表示测试所得各点的温度(℃)。试用 线性插值求出在一分钟内每隔20 20秒 钢轨每隔1 线性插值求出在一分钟内每隔20秒、钢轨每隔1米处的温 TI。 度TI。 命令如下: x=0:2.5:10; h=[0:30:60]'; T=[95,14,0,0,0;88,48,32,12,6;67,64,54,48,41]; xi=[0:10]; hi=[0:20:60]'; TI=interp2(x,h,T,xi,hi) exp6_10.m
MATLAB数据分析与多项式计算
二、求和、积、均值与中值 求和、
2. 求积 y=prod(x,dim) 3. 求均值 y=mean(x,dim) 4. 求中值 y=median(x,dim) 其用法与sum函数相同 求向量x 例6.5 求向量x的平均值和中值 exp6_5.m
MATLAB数据分析与多项式计算
MATLAB数据分析与多项式计算
6.4 多项式计算
一、多项式的建立与表示方法
在MATLAB中,多项式使用降幂系数的行向量表示,如:
s 12s + 25s + 118
4 3
表示为:p=[1 -12 0 25 118]
MATLAB数据分析与多项式计算
6.4 多项式计算
二、多项式运算
1.相乘conv 1.相乘conv 相乘 a=[1 2 3] ; b=[1 2] c=conv(a,b)=1 4 7 6 conv指令可以嵌套使用,如conv(conv(a,b),c) 2.相除 相除deconv 2.相除deconv [q,r]=deconv(c,b) q=1 2 3 %商多项式 r=0 0 0 %余多项式 3.求微分多项式 求微分多项式polyder 3.求微分多项式polyder polyder(a)=2 2
y =

i =1
x i2
n 1
y =

i =1
x i2
n
MATLAB数据分析与多项式计算
四、标准方差与相关系数
2. 相关系数 y=corrcoef(x) 返回从矩阵X形成的一个相关系数矩阵。 此相关系数矩阵的大小与矩阵X一样。 它把矩阵X的每列作为一个变量,然后求它们的相关系数。 生成满足正态分布的10000 10000× 随机矩阵, 例6.7 生成满足正态分布的10000×5随机矩阵,然后求各 列元素的均值和标准方差,再求这5 列元素的均值和标准方差,再求这5列随机数据的相关系 数矩阵。 数矩阵。exp6_7.m
相关文档
最新文档