概述
1、描述性统计分析
描述性统计分析函数标准用法都是对列状数据进行操作。
meam(X):当X为向量,返回向量的均值;当X为矩阵,返回矩阵的每列元素均值构成的行向量。min,max,sort,mean,median,std,var,sum,prod,cumsum,sumprod等函数用法与mean类似。cov(X,Y):这里X,Y为向量,分别代表一个样本,求得样本的协方差。cov(X):这里X为矩阵,将各列看成一个样本,求得样本协方差矩阵。corrcoef用法与cov类似,求得相关系数。[Y,I]=sort(X):当X为向量,Y返回X的升序排列,I返回Y各元素原来的编址,即Y=X(I);当X为矩阵,分别对各列排序。Y=prctile(X,p):当X为向量,Y返回X的p%上分位数;当X为矩阵,分别求各列的上分位数。trimmean(X,p):剔除上下各(p/2)%数据以后的均值。
例如:
>> data=[11 57 291; 13 54 278;10 66 253; 9 46 307; 16 75
244;15 70 256; 8 40 310]
data =
11 57 291 13 54 278 10 66 253 9 46 307 16 75 244 15 70 256 8 40 310
>> % 注意mean和median的区别>> mean(data),median(data)
ans =
11.7143 58.2857 277.0000
ans =
11 57 278
>> % 注意var是std的平方>> std(data),sqrt(var(data))
ans =
3.0394 12.7895 26.7457
ans =
3.0394 12.7895 26.7457
>> % 注意sum与cumsum不同>> sum(data),cumsum(data)
ans =
82 408 1939
ans =
11 57 291 24 111 569 34 177 822 43 223 1129 59 298 1373 74 368 1629 82 408 1939
>> % 将三列看成三个随机变量>> corrcoef(data)
ans =
1.0000 0.8299 -0.7832 0.8299 1.0000 -0.9633 -0.7832 -0.9633 1.0000
>> % 排序>> [Y,I]=sort(data)
Y =
8 40 244 9 46 253 10 54 256 11 57 278 13 66 291 15 70 307 16 75 310
I =
7 7 5 4 4 3 3 2 6 1 1 2 2 3 1 6 6 4 5 5 7
>> % prctilr(data,50)等于median(data)>> prctile(data,[25,50,100])
ans =
9.2500 48.0000 253.7500 11.0000 57.0000 278.0000 16.0000 75.0000 310.0000
>> % 注意与mean的区别>> trimmean(data,20)
ans =
11.6000 58.6000 277.0000
2、统计图
bar(Y):作向量Y的条形图。
bar(X,Y):作向量Y相对于X的条形图。
hist(X,k):将向量X中数据等距分为k组,并作频数直方图。k默认为10.
[N,X]=hist(Y,k): 不做图,N返回各组数据频数,X返回各组的中心位置。
boxplot(Y):作向量Y的箱型图。
例子:
>> vdata=rand(1,100); 0个标准正态分布随机数>> % 由于是随机数,所以每次结果都不相同>> subplot(1,3,1);>> % 作出5组频数直方图,如图(a)所示>> hist(vdata,5);>> xlabel('(a)');>> [n,x]=hist(vdata,5)
n =
26 18 21 17 18
x =
0.1038 0.3021 0.5004 0.6987 0.8970
>> % 5组频率直方图,如图(b)所示>> subplot(1,3,2);>> bar(x,n/100)>> xlabel('(b)')>> % 箱型图,如图(c)>> subplot(1,3,3);>> boxplot(vdata);>> xlabel('(c)')
图1 统计图
箱型图的箱中包含了从75%上分位数到25%上分位数的数据,中间线为中位线。
3、随机数生成
R=rand(m,n):生成区间(0,1)上均匀分布的m行n列随机矩阵。
R=randn(m,n):生成标准正态分布N(0,1)的m行n列随机矩阵。
P=randperm(N): 生成1,2,…,N的一个随机排列。
实际上,计算机生成的是伪随机数,其生成机制由随机种子控制。rand和randn是最基本的随机数产生函数,他们允许用户自己设置随机种子。若将随机种子设为特定值,就可以是随机模拟称为可再现的。例如:
>> rand('state',1)>> randperm(5)
总是产生42513。另一方面,若将种子设置为系统时间
>> rand('state',sum(1000*clock))
则几乎可以得到真正的随机实验。
4、随机变量模拟
R=random(sist,p1,p2,…,m,n):
生成以p1,p2,…为参数的m行n列dist类分布随机数矩阵。dist是表示分布类型字符串。
R=unidrnd(N,m,n):生成1,2,…,N的等概率m行n列随机矩阵。
R=binornd(k,p,m,n):生成参数为k,p的m行n列二项分布随机数矩阵。
R=unifrnd(a,b,m,n):生成[a,b]区间上的连续型均匀分布m行n列随机数矩阵。
R=normrnd(mu,sigma,m,n):生成均值为μ,均方差为σ的m行n列正态分布随机数矩阵。
R=mvnrnd(mu,sigma,m):生成n维正态分布数据这里μ为n维均值向量,σ为n阶协方差矩阵(它必须是正定的),R为m*n矩阵,每行代表一个随机数。
注:通用随机数生成函数random可适用的分布类型包括:’discrete
uniform’(离散均匀分布),’binpmial’(二项分布),’normal’(正态分布),’poisson’(Poisson分布),’chi-square’(χ²分布),’t’(t分布),’f’(F
分布),’geometric’(几何分布),’hypergeometric’(超几何分布),’exponential’(指数分布),’gamma’(Γ分布),’weibull’(Weibull分布)等。
5、概率函数
y=pdf(dist,x,p1,p2,…):返回以p1,p2,…为参数的m行n列dist分布概率函数(分布率或密度函数)在x处的值。dist是表示分布类型的字符串,可适用的分布类型类似于random。
y=cdf(dist,x,p1,p2,…):返回以p1,p2,…为参数的m行n列dist类分布累计概率函数(即分布函数)在x处的值。dist是表示分布类型的字符串,可适用的分布类型类似于random。
y=icdf(dist,x,p1,p2,…):返回以p1,p2,…为参数的m行n列dist类分布函数(即下分位数)在x处的值,介于0~1。dist是表示分布类型的字符串,可适用的分布类型类似于random。
y=normpdf(x,mu,sigma):返回参数为μ和σ的正态分布密度函数在x处的值。
p=normcdf(x,mu,sigma):正态分布函数值。
x=norminv(p,mu,sigma):normedf的逆函数,即p下分位。
例如:
>> a=normpdf(90,80,10)-normpdf(70,80,10)
a =
0
>> b=normcdf(90,80,10)-normcdf(70,80,10)
b =
0.6827
>> p=(1-b)/2;>> c=norminv(p,80,10)
c =
70
>> d=norminv(1-p,80,10)
d =
90
>> pdf('normal',90,80,10)
ans =
0.0242
>> p=cdf('normal',90,80,10)
p =
0.8413
>> icdf('normal',p,80,10)
ans =
90
>> icdf('t',0.95,20) % 自由度为20的t分布95%下分位数
ans =
1.7247
6、统计推断
[muhat,sigmahat,muci,sigmaci]=normfit(x,alpha):正态总体N(μ,σ²)参数估计。求得列状样本数据x的点估计μ=muhat和σ=sigmahat,以及相应的100(1-α)%置信区间muci和sigmaci。α的默认值为0.05。
[h,sig]=ttest(x,m,alpha,tail):正态总体N均值t检验。检验列状样本数据x的均值是否为m;α为显著性水平(默认值0.05);参数tail为0表示双边检验(H1:μ≠μ0)(默认值),1表示右边检验(H1:μ>μ0),-1表示左边检验(H1:μ
[p,h]=ranksum(x,y):两个总体一致性的Wilcoxon秩和检验。p返回列状样本数据x和y分布相同的显著性概率。p<0.05时,h=1(拒绝H0)。
例如:
>> x=randn(200,1);>> [a,b,aci,bci]=normfit(x)
a =
0.0252
b =
1.0883
aci =
-0.1265 0.1769
bci =
0.9911 1.2068
>> [h,sig]=ttest(x,0) % 检验均值是否为0
h =
0
sig =
0.7436
>> y=normrnd(0,1,1000,1); % 生成1000个正态N(0,1)随机数>> [p,h]=ranksum(x,y) %检验x与y分布是否相同
p =
0.6298
h =
0
7、概率和统计相关指令
表1 概率统计主要MATLAB命令
主题词
意义
主题词
意义
max
最大值
random
随机数
min
最小值
unidrnd
离散均匀分布随机数
sum
各元素和
unifrnd
均匀分布随机数
cumsum
元素累计和
normrnd
正态分布随机数
prod
各元素积
binornd
二项分布随机数
cumprod
元素累计积
poissrnd
泊松分布随机数
mean
样本均值
mvnrnd
多维正态分布随机数
std
样本标准差
概率函数
var
样本方差
normcdf
正态分布密度
cov
样本协方差
cdf
累计概率函数(分布函数)
corrcoef
样本相关系数
normcdf
正态分布分布函数
sort
排序(从小到大)
icdf
逆分布函数
median
中值
norminv
正态分布下分位数
prctile
百分位数
tinv
t分布下分位数
trimmean
剔除极端数据的均值
chi2inv
χ²分布下分位数
bar
条形图
finv
F分布下分位数
hist
数据分组距频数图
mle
参数估计
boxplot
箱型图
normfit
正态分布参数估计
rand
[0,1]均匀分布随机数
ttest
单总体t检验
randn
标准正态分布随机数
ttest2
双总体t检验
randperm
随机排列
ranksum
分布秩和检验
最后
以上就是耍酷摩托为你收集整理的matlab中unifrnd函数用法,概率和统计的MATLAB指令的全部内容,希望文章能够帮你解决matlab中unifrnd函数用法,概率和统计的MATLAB指令所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复