matlab编写程序

更新时间:2023-09-11 14:19:01 阅读量: 教育文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

mathematics

Basic Matrix Operations

>> a=[1 2 3 4 5]生成矩阵; >> b=a+2矩阵加上数字 >> plot(b)画三点图 >> grid on生成网格 >> bar(b)生成条状图

>> xlabel('sample#') 给X轴加标注 >> ylabel('pound') 给Y轴加标注 >> title('bar plot')加标题 >> plot(b,'*')用*表示点

>> axis([0 10 10 20 0 20])各个轴的范围 >> A = [1 2 0; 2 5 -1; 4 10 -1] >> B=A'转置 >> C=A*B矩阵相乘 >> C=A.*B数组相乘 >> X=inv(A)逆 >> I=inv(A)*A单位矩阵 >> eig(A)特征值

>> svd(A) the singular value decomposition. 奇异值分解

>> p = round(poly(A))生成特征多项式的系数 >> roots(p) 特征多项式的根,即矩阵的特征值 >> q = conv(p,p) 向量的卷积 >> r = conv(p,q) 再向量的卷积 >> plot(r)

>> who 变量列表 >> whos 变量的详细列表 >> sqrt(-1);>> sqrt(2) 开方

Matrix Manipulation

>> A = magic(3) 生成魔方矩阵

graphics

2-D Plots

Line Plot of a Chirp(线状图)

>> doc plot 在帮助中查看plot更多的信息 >> x=0:0.05:5; >> y=sin(x.^2); >> plot(x,y); >> plot(x,y,'o'); >> xlabel('Time') >> ylabel('Amplitude')

Bar Plot of a Bell Shaped Curve(条状图) >> x = -2.9:0.2:2.9;

>> bar(x,exp(-x.*x));函数中包括了计算,plot直接完成 Stairstep Plot of a Sine Wave(阶梯图) >> x=0:0.25:10; >> stairs(x,sin(x)); Errorbar Plot >> x=-2:0.1:2; >> y=erf(x);

>> y=erf(x);e = rand(size(x))/10 >> errorbar(x,y,e); Polar Plot

>> t=0:0.01:2*pi;

>> polar(t,abs(sin(2*t).*cos(2*t))); abs绝对值 Stem Plot >> x = 0:0.1:4;

>> y = sin(x.^2).*exp(-x); >> stem(x,y)

Scatter Plot >> load count.dat

>> scatter(count(:,1),count(:,2),'r*') >> xlabel('Number of Cars on Street A'); >> ylabel('Number of Cars on Street B'); 更多plot的类型可以在命令行输入doc praph2d查看

3-D Plots

Mesh Plot of Peaks

>> z=peaks(25);peaks is a function of two variables, obtained by translating and

scaling Gaussian distributions, which is useful for demonstrating mesh, surf, pcolor, contour, and so on.

>> mesh(z);

>> meshc(z);带有轮廓线

>> colormap(hsv);对mesh的图象使用不同的色彩,如gray, hot, bone. Etc Surface Plot of Peaks >> z=peaks(25);

>> surf(z); 3-D shaded surface plot >> surfc(z);带有轮廓线

>> colormap jet;同>> colormap(jet); 对mesh的图象使

用不同的色彩

Surface Plot (with Shading) of Peaks >> z=peaks(25);

>> surfl(z); Surface plot with colormap-based lighting >> shading interp; Set color shading properties >> colormap(pink); Contour Plot of Peaks >> z=peaks(25);

>> contour(z,16) 轮廓线 >> colormap(hsv)

Quiver (Quiver or velocity plot) >> x = -2:.2:2; >> y = -1:.2:1;

>> [xx,yy] = meshgrid(x,y); >> zz = xx.*exp(-xx.^2-yy.^2); >> [px,py] = gradient(zz,.2,.2); >> quiver(x,y,px,py,2); Slice(Volumetric slice plot)

>> [x,y,z] = meshgrid(-2:.2:2,-2:.25:2,-2:.16:2);

rsmdemo 响应拟合工具

robustdemo 稳健回归拟合工具

Normal Distribution

height = normrnd(50,2,30,1);

(R = normrnd(mu,sigma,m,n)) % Simulate heights.

[mu,s,muci,sci] = normfit(height) mu = 50.2025 均值 s = 1.7946 标准差 muci =

49.5210

50.8841 95% confidence intervals for the parameter estimates on the mean sci =

1.4292

2.4125 95% confidence intervals for the parameter estimates on the

standard deviation

Y = pdf(name,X,A)/ Y = normpdf(X,A)

Y = pdf(name,X,A,B)/ Y = normpdf(X,A,B)

Y = pdf(name,X,A,B,C) / Y = normpdf(X,A,B,C) Probability density functions Plot(X,Y) 画正态分布图

One-sample t-test

h = ttest(x) h = ttest(x,m) h = ttest(x,y)

h = ttest(...,alpha)

h = ttest(...,alpha,tail)

h = ttest(...,alpha,tail,dim) [h,p] = ttest(...) [h,p,ci] = ttest(...)

[h,p,ci,stats] = ttest(...)

Multivariate Normal Distribution

mu = [0 0]; 均值

Sigma = [.25 .3; .3 1]; 样本协方差 x1 = -3:.2:3; x2 = -3:.2:3;

[X1,X2] = meshgrid(x1,x2); Generate X and Y arrays for 3-D plots

F = mvnpdf([X1(:) X2(:)],mu,Sigma); Multivariate normal probability density function F = reshape(F,length(x2),length(x1)); Generate X and Y arrays for 3-D plots surf(x1,x2,F); 正态分布的概率密度曲面图 caxis([min(F(:))-.5*range(F(:)),max(F(:))]); axis([-3 3 -3 3 0 .4])

xlabel('x1'); ylabel('x2'); zlabel('Probability Density');

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?

'beta' (Beta distribution) 'bino' (Binomial distribution) 'chi2' (Chi-square distribution) 'exp' (Exponential distribution) 'ev' (Extreme value distribution) 'f' (F distribution)

'gam' (Gamma distribution)

'gev' (Generalized extreme value distribution) 'gp' (Generalized Pareto distribution) 'geo' (Geometric distribution)

'hyge' (Hypergeometric distribution) 'logn' (Lognormal distribution)

'nbin' (Negative binomial distribution) 'ncf' (Noncentral F distribution) 'nct' (Noncentral tdistribution)

'ncx2' (Noncentral chi-square distribution) 'norm' (Normal distribution) 'poiss' (Poisson distribution) 'rayl' (Rayleigh distribution) 't' (t distribution)

'unif' (Uniform distribution)

'unid' (Discrete uniform distribution) 'wbl' (Weibull distribution)

Shewhart control charts - MATLAB

controlchart(X)

st = controlchart(runout,'chart',{'xbar' 'r'});

fprintf('Parameter estimates: mu = %g, sigma = %g\\n',st.mu,st.sigma);

输出:Parameter estimates: mu = -0.0863889, sigma = 0.130215

% chart

X=normrnd(50,2,20,10); Y=normrnd(53,2,10,10); Z=[X;Y]; controlchart(X) controlchart(Y); controlchart(Z);

Group 多次观测,每次观测值大于1 (还需要确定)XBAR, S, and R charts required grouped data.!!! refline 在当前坐标中画参考线

with tansig. See newff or newcf for simulation examples.

logsig S形Log传递函数

logsig.JPG

logsig(n) = 1 / (1 + exp(-n))

如何用matlab生成随机数函数

rand(n):生成0到1之间的n阶随机数方阵 rand(m,n):生成0到1之间的m×n的随机数矩阵 (现成的函数) 另外:

Matlab随机数生成函数

betarnd 贝塔分布的随机数生成器 binornd 二项分布的随机数生成器 chi2rnd 卡方分布的随机数生成器 exprnd 指数分布的随机数生成器 frnd f分布的随机数生成器 gamrnd 伽玛分布的随机数生成器 geornd 几何分布的随机数生成器 hygernd 超几何分布的随机数生成器 lognrnd 对数正态分布的随机数生成器 nbinrnd 负二项分布的随机数生成器 ncfrnd 非中心f分布的随机数生成器 nctrnd 非中心t分布的随机数生成器 ncx2rnd 非中心卡方分布的随机数生成器 normrnd 正态(高斯)分布的随机数生成器 poissrnd 泊松分布的随机数生成器 raylrnd 瑞利分布的随机数生成器 trnd 学生氏t分布的随机数生成器 unidrnd 离散均匀分布的随机数生成器 unifrnd 连续均匀分布的随机数生成器

weibrnd 威布尔分布的随机数生成器

Matlab里面有个概率统计工具包,里面有类*inv函数就是专门用来求分位数的,比如求t分布的分位数就用tinv(),f分布就是finv(),卡方分布就是chi2inv()。其他分布的分位数也是类似的,需要的话到工具包里去查一下就可以。不同分布的参数不同,分位数函数中参数的个数和取值范围也不同,具体的做法可以用help查。比如t分布分位数函数的用法,执行help tinv,就有详细的帮助信息,这个对matlab略有了解的就没有问题。

分布函数相关的 卡方分布

1、X = chi2inv(P,V) given probability p and ν degrees of freedom Chi-square inverse cumulative distribution function 卡方分布1- P分位数

2、R = chi2rnd(V);R = chi2rnd(V,u);R = chi2rnd(V,m,n) Chi-square random numbers

3、[M,V] = chi2stat(NU); Chi-square mean and variance 4、Y = chi2pdf(X,V) ;Chi-square probability density function 5、Y = pdf(name,X,A);Y = pdf(name,X,A,B);Y = pdf(name,X,A,B,C) Probability density functions F分布

X = finv(P,a,b); 分位数 R = frnd(m,n);随机数 [M,V] = Fstat(4,8) Y = inv(X) 转置 Y=var(X) Y=cov(X)

>> det(a) %行列式

>>P=diag(T2);%对角线的元素

line([x1,x1],[y1,y2])% 在图中加一条线, 如何在matlab图形上标注变量文字: text(xlabel,ylabel,num2str(x)) text(xlable,ylabel,num2str(y)) %xlabel,ylabel是坐标.

set(gca,‘zlim',[a,b]);设置坐标的范围。 x=get(gca,‘xlim'),再乘上你要的比例。

[V,D]=eig(A)% V是特征向量,D是特征值。[V,D] = EIG(X) produces a diagonal matrix D of eigenvalues and a full matrix V whose columns are the corresponding eigenvectors so that X*V = V*D.

如何用Matlab实现随机抽取数据:

举个例子. m=100;n=10; A=(1:m).^2; 可以有两种办法:

a=randperm(m);函数randperm(n),是把1-n随机排列的,randperm(100),这就把1-100

的序号随机打乱了。用rand函数产生随机数,作为数据数组A的序号i,A(i)就是你所要的随机的数据了。rand(n):生成0到1之间的n阶随机数方阵 rand(m,n):生成0到1之间的m×n的随机数矩阵 (现成的函数)

A(a(1:n)) 生成一元 x(a(1:n),:)生成多元 或者 A(unidrnd(m,n,1))

ellipse1

Geographic ellipse from center, semimajor axes, eccentricity, and azimuth

Syntax

[lat,lon] = ellipse1(lat0,lon0,ellipse)

[lat,lon] = ellipse1(lat0,lon0,ellipse,offset) [lat,lon] = ellipse1(lat0,lon0,ellipse,offset,az)

[lat,lon] = ellipse1(lat0,lon0,ellipse,offset,az,ellipsoid) [lat,lon] = ellipse1(lat0,lon0,ellipse,offset,units) [lat,lon] = ellipse1(lat0,lon0,ellipse,offset,az,

[lat,lon] = ellipse1(lat0,lon0,ellipse,offset,az,ellipsoid, [lat,lon] = ellipse1(lat0,lon0,ellipse,offset,az,ellipsoid,units,npts) [lat,lon] = ellipse1(track,...) mat = ellipse1(...)

注意的问题

1.使用“Tab”键可以在Matlab进行命令输入时补全变量名或者命令名;

2.使用“Ctrl+C”组合键能够强制从运行的或者进入死循环的Matlab程序中退出;

3.使用“上”“下”方向键能够调用Matlab的历史命令; 4.Matlab的变量命名规则注意: a.区分大小写; b.必须以字母开头;

c.中间不能有空格、标点符号等;

5.在一条命令或语句的末尾加上一个分号,则Matlab就不会在屏幕上显示这条命令计算的结果; 6.在Matlab中,“...”(3个句点)称为“续行符”,表示同一语句的延续输入; 注意:只有当续行符出现在变量名和运算符之间,才能起到语句延续的作用。出现在一个变量名中间时,是不能实现语句延续的。换句话说,变量名不能分割成两行书写。

7.在进行三角函数运算时,Matlab使用的是“弧度制”而不是“角度制”; 8.选择需要注释的语句块以后,使用“Ctrl+R”可以进行Matlab语句注释;使用“Ctrl+T”可以进行语句块的解注释;

9.Matlab数组的下标是从“1”开始的,这点与C语言不同;

10.使用空格和逗号隔开的元素指定的是同一行的元素,使用分号或者回车分开的元素指定的是不同行的元素。

MATLAB概率分布函数

mean Average or mean value of array std Standard deviation

corrcoef Correlation coefficients median Median value of array max Largest elements in array min Smallest elements in array

统计工具箱函数

表Ⅰ-1 概率密度函数

函数名 对应分布的概率密度函数 betapdf 贝塔分布的概率密度函数 binopdf 二项分布的概率密度函数 chi2pdf 卡方分布的概率密度函数 exppdf 指数分布的概率密度函数 fpdf f分布的概率密度函数

gampdf 伽玛分布的概率密度函数 geopdf 几何分布的概率密度函数 hygepdf 超几何分布的概率密度函数

normpdf 正态(高斯)分布的概率密度函数 lognpdf 对数正态分布的概率密度函数 nbinpdf 负二项分布的概率密度函数 ncfpdf 非中心f分布的概率密度函数 nctpdf 非中心t分布的概率密度函数 ncx2pdf 非中心卡方分布的概率密度函数 poisspdf 泊松分布的概率密度函数 raylpdf 雷利分布的概率密度函数 tpdf 学生氏t分布的概率密度函数 unidpdf 离散均匀分布的概率密度函数 unifpdf 连续均匀分布的概率密度函数 weibpdf 威布尔分布的概率密度函数 表Ⅰ-2 累加分布函数

函数名 对应分布的累加函数 betacdf 贝塔分布的累加函数 binocdf 二项分布的累加函数 chi2cdf 卡方分布的累加函数 expcdf 指数分布的累加函数 fcdf f分布的累加函数

gamcdf 伽玛分布的累加函数 geocdf 几何分布的累加函数 hygecdf 超几何分布的累加函数 logncdf 对数正态分布的累加函数 nbincdf 负二项分布的累加函数 ncfcdf 非中心f分布的累加函数 nctcdf 非中心t分布的累加函数 ncx2cdf 非中心卡方分布的累加函数 normcdf 正态(高斯)分布的累加函数

poisscdf 泊松分布的累加函数 raylcdf 雷利分布的累加函数 tcdf 学生氏t分布的累加函数 unidcdf 离散均匀分布的累加函数 unifcdf 连续均匀分布的累加函数 weibcdf 威布尔分布的累加函数

表Ⅰ-3 累加分布函数的逆函数

函数名 对应分布的累加分布函数逆函数 betainv 贝塔分布的累加分布函数逆函数 binoinv 二项分布的累加分布函数逆函数 chi2inv 卡方分布的累加分布函数逆函数 expinv 指数分布的累加分布函数逆函数 finv f分布的累加分布函数逆函数

gaminv 伽玛分布的累加分布函数逆函数 geoinv 几何分布的累加分布函数逆函数 hygeinv 超几何分布的累加分布函数逆函数 logninv 对数正态分布的累加分布函数逆函数 nbininv 负二项分布的累加分布函数逆函数 ncfinv 非中心f分布的累加分布函数逆函数 nctinv 非中心t分布的累加分布函数逆函数 ncx2inv 非中心卡方分布的累加分布函数逆函数 icdf

norminv 正态(高斯)分布的累加分布函数逆函数 poissinv 泊松分布的累加分布函数逆函数 raylinv 雷利分布的累加分布函数逆函数 tinv 学生氏t分布的累加分布函数逆函数 unidinv 离散均匀分布的累加分布函数逆函数 unifinv 连续均匀分布的累加分布函数逆函数 weibinv 威布尔分布的累加分布函数逆函数 表Ⅰ-4 随机数生成器函数

函 数 对应分布的随机数生成器 betarnd 贝塔分布的随机数生成器 binornd 二项分布的随机数生成器 chi2rnd 卡方分布的随机数生成器 exprnd 指数分布的随机数生成器 frnd f分布的随机数生成器

gamrnd 伽玛分布的随机数生成器 geornd 几何分布的随机数生成器 hygernd 超几何分布的随机数生成器 lognrnd 对数正态分布的随机数生成器 nbinrnd 负二项分布的随机数生成器 ncfrnd 非中心f分布的随机数生成器 nctrnd 非中心t分布的随机数生成器

ncx2rnd 非中心卡方分布的随机数生成器 normrnd 正态(高斯)分布的随机数生成器 poissrnd 泊松分布的随机数生成器 raylrnd 瑞利分布的随机数生成器 trnd 学生氏t分布的随机数生成器 unidrnd 离散均匀分布的随机数生成器 unifrnd 连续均匀分布的随机数生成器 weibrnd 威布尔分布的随机数生成器 表Ⅰ-5 分布函数的统计量函数 函数名 对应分布的统计量

betastat 贝塔分布函数的统计量 binostat 二项分布函数的统计量 chi2stat 卡方分布函数的统计量 expstat 指数分布函数的统计量 fstat f分布函数的统计量

gamstat 伽玛分布函数的统计量 geostat 几何分布函数的统计量 hygestat 超几何分布函数的统计量 lognstat 对数正态分布函数的统计量 nbinstat 负二项分布函数的统计量 ncfstat 非中心f分布函数的统计量 nctstat 非中心t分布函数的统计量 ncx2stat 非中心卡方分布函数的统计量 normstat 正态(高斯)分布函数的统计量 poisstat 泊松分布函数的统计量 续表

函数名 对应分布的统计量

raylstat 瑞利分布函数的统计量 tstat 学生氏t分布函数的统计量 unidstat 离散均匀分布函数的统计量 unifstat 连续均匀分布函数的统计量 weibstat 威布尔分布函数的统计量 表Ⅰ-6 参数估计函数

函 数 名 对应分布的参数估计 betafit 贝塔分布的参数估计

betalike 贝塔对数似然函数的参数估计 binofit 二项分布的参数估计 expfit 指数分布的参数估计 gamfit 伽玛分布的参数估计

gamlike 伽玛似然函数的参数估计 mle 极大似然估计的参数估计

normlike 正态对数似然函数的参数估计 normfit 正态分布的参数估计

poissfit 泊松分布的参数估计 unifit 均匀分布的参数估计 weibfit 威布尔分布的参数估计

weiblike 威布尔对数似然函数的参数估计 表Ⅰ-7 统计量描述函数 函 数 描 述

bootstrap 任何函数的自助统计量 corrcoef 相关系数 cov 协方差

crosstab 列联表 geomean 几何均值 grpstats 分组统计量 harmmean 调和均值 iqr 内四分极值 kurtosis 峰度 mad 中值绝对差 mean 均值 median 中值

moment 样本模量

nanmax 包含缺失值的样本的最大值 续表

函 数 描 述

Nanmean 包含缺失值的样本的均值 nanmedian 包含缺失值的样本的中值 nanmin 包含缺失值的样本的最小值 nanstd 包含缺失值的样本的标准差 nansum 包含缺失值的样本的和 prctile 百分位数 range 极值 skewness 偏度 std 标准差

tabulate 频数表 trimmean 截尾均值 var 方差

表Ⅰ-8 统计图形函数 函 数 描 述 boxplot 箱形图

cdfplot 指数累加分布函数图 errorbar 误差条图

fsurfht 函数的交互等值线图 gline 画线

gname 交互标注图中的点 gplotmatrix 散点图矩阵

gscatter 由第三个变量分组的两个变量的散点图 lsline 在散点图中添加最小二乘拟合线 normplot 正态概率图 pareto 帕累托图 qqplot Q-Q图

rcoplot 残差个案次序图 refcurve 参考多项式曲线 refline 参考线

surfht 数据网格的交互等值线图 weibplot 威布尔图

表Ⅰ-9 统计过程控制函数 函 数 描 述 capable 性能指标 capaplot 性能图

ewmaplot 指数加权移动平均图 histfit 添加正态曲线的直方图

normspec 在指定的区间上绘正态密度 schart S图 xbarplot x条图

表Ⅰ-10 聚类分析函数 函 数 描 述

cluster 根据linkage函数的输出创建聚类 clusterdata 根据给定数据创建聚类 cophenet Cophenet相关系数 dendrogram 创建冰柱图

inconsistent 聚类树的不连续值 linkage 系统聚类信息

pdist 观测量之间的配对距离 squareform 距离平方矩阵 zscore Z分数

表Ⅰ-11 线性模型函数 函 数 描 述

anova1 单因子方差分析 anova2 双因子方差分析 anovan 多因子方差分析 aoctool 协方差分析交互工具 dummyvar 拟变量编码 friedman Friedman检验 glmfit 一般线性模型拟合

kruskalwallis Kruskalwallis检验 leverage 中心化杠杆值

lscov 已知协方差矩阵的最小二乘估计

manova1 单因素多元方差分析

manovacluster 多元聚类并用冰柱图表示 multcompare 多元比较

多项式评价及误差区间估计 polyfit 最小二乘多项式拟合 polyval 多项式函数的预测值 polyconf 残差个案次序图 regress 多元线性回归 regstats 回归统计量诊断 续表

函 数 描 述 Ridge 岭回归

rstool 多维响应面可视化 robustfit 稳健回归模型拟合 stepwise 逐步回归

x2fx 用于设计矩阵的因子设置矩阵 表Ⅰ-12 非线性回归函数 函 数 描 述

nlinfit 非线性最小二乘数据拟合(牛顿法) nlintool 非线性模型拟合的交互式图形工具 nlparci 参数的置信区间 nlpredci 预测值的置信区间 nnls 非负最小二乘

表Ⅰ-13 试验设计函数 函 数 描 述

cordexch D-优化设计(列交换算法) daugment 递增D-优化设计

dcovary 固定协方差的D-优化设计 ff2n 二水平完全析因设计 fracfact 二水平部分析因设计 fullfact 混合水平的完全析因设计

hadamard Hadamard矩阵(正交数组) rowexch D-优化设计(行交换算法) 表Ⅰ-14 主成分分析函数 函 数 描 述 barttest Barttest检验

pcacov 源于协方差矩阵的主成分 pcares 源于主成分的方差

princomp 根据原始数据进行主成分分析

表Ⅰ-15 多元统计函数

函 数 描 述 classify 聚类分析 mahal 马氏距离

manova1 单因素多元方差分析 manovacluster 多元聚类分析 表Ⅰ-16 假设检验函数 函 数 描 述 ranksum 秩和检验 signrank 符号秩检验 signtest 符号检验 ttest 单样本t检验 ttest2 双样本t检验 ztest z检验

表Ⅰ-17 分布检验函数 函 数 描 述

jbtest 正态性的Jarque-Bera检验

kstest 单样本Kolmogorov-Smirnov检验 kstest2 双样本Kolmogorov-Smirnov检验 lillietest 正态性的Lilliefors检验 表Ⅰ-18 非参数函数 函 数 描 述

friedman Friedman检验

kruskalwallis Kruskalwallis检验 ranksum 秩和检验 signrank 符号秩检验 signtest 符号检验

表Ⅰ-19 文件输入输出函数 函 数 描 述 caseread 读取个案名

casewrite 写个案名到文件 tblread 以表格形式读数据

tblwrite 以表格形式写数据到文件

tdfread 从表格间隔形式的文件中读取文本或数值数据 表Ⅰ-20 演示函数

函 数 描 述

aoctool 协方差分析的交互式图形工具 disttool 探察概率分布函数的GUI工具 glmdemo 一般线性模型演示 randtool 随机数生成工具 polytool 多项式拟合工具

本文来源:https://www.bwwdw.com/article/ru4h.html

Top