matlab数据分析与多项式计算
1 数据统计处理
向量
[y,m]=max(x) %x向量最大值存入y,有复数则按模取,最大值序号存入m
min使用方法相同
矩阵
max(A) %返回一行向量,向量第m个元素是矩阵A第m列上最大值(找到每一列最大值排成行向量)
[y,u]=max(A) %返回行向量y,u,y记录每列最大值,u记录每列最大值行号
max(A,[],dim) %dim取1时,函数和max(A)相同,取2时返回一个列向量其第m个元素是A第m行上最大值
min用法同max
向量或矩阵对应元素比较
max(A,B) %A,B同型向量或矩阵,元素依次比较并返回
min同max
求和求积
向量
sum(x) %返回元素和
prod(x) %返回元素积
矩阵
sum(A) %返回一个行向量(分别求各列和)
prod(A) %分别求各列积,返回行向量
sum(A,dim) %dim取1,同sum(A),取2,求各行和
prod(A,dim) %雷同sum
均值和中值
mean
median %用法及解释同上
累加与累乘
cumsum
cumprod %用法及解释同上,输出矩阵,依次累乘
标准方差与相关系数
std(x) %向量x,返回标准方差
std(A) %矩阵A,返回方差行向量
std(A,flag,dim) %dim同前,flag取0,按σ1所列公式计算标准方程,取1时,按σ2.。。。
相关系数
corrcoef(A) %返回从矩阵x形成的一个相关矩阵
corrcoef(x,y) %x,y是向量,
排序
sort(x) %升序排列
sort(A,dim) %同上,dim决定按列还是按行
2 插值
一维数据插值
Y1=interp1(X,Y,X1,‘method’) %函数根据X,Y的值,计算函数在X1处的值。X,Y是两个等长的已知向量,分别描述采样点和样本值,X1是一个向量或标量,描述欲插值的点,Y1是一个与X1等长的插值结果。method是插值方法,允许的取值有‘linear’、‘nearest’、‘cubic’、‘spline’
二维数据插值
Z1=interp2(X,Y,Z,X1,Y1,‘method’) %其中X,Y是两个向量,分别描述两个参数的采样点,Z是与参数采样点对应的函数值,X1,Y1是两个向量或标量,描述欲插值的点。Z1是根据相应的插值方法得到的插值结果。 method的取值与一维插值函数相同。X,Y,Z也可以是矩阵形式
3 曲线拟合
[p,s]=polyfit(x,y,m) %求最小二乘拟合多项式系数,函数根据采样点x和采样点函数值y,产生一m次多项式p及其在采样点的误差向量s
4 离散傅里叶变换
fft(x/A) %返回向量x或返回A矩阵列的离散傅里叶变换,若x长度为N,N为偶数,则以2为基数,否则以非2为基数变换
fft(x/A,N) %限定向量/矩阵列长度为N,小于N则补0
fft(A,[],dim)或fft(A,N,dim) %解释同前
5 多项式运算
求值
polyval(p,x) %对x中每个值求多项式的值
polyvalm(p,A) %求矩阵,要求矩阵为方阵,以A为自变量求多项式的值
求根
x=roots§ %根依次存到向量x中
p=poly(x) %以x的值做根建立多项式p
乘除
conv(p1,p2) %p1与p2乘积
[q,r]=deconv(p1,p2) %q为商,r为余数
求导
polyder§ %求p的导数
p=polyder(p1,p2) %求p1*p2导数
[p,q]=polyder(p1,p2) %求p1/p2导数,p为分子,q为分母