MATLAB函数var、std浅析
2016-04-29 13:48
531 查看
在衡量一组数据的离散程度的时候通常计算这组数据的方差(Variance)或者标准差(Standard Deviation)
当分析数据为总体(Population)和样本(Sample)时方差和标准差的计算方式又有不同,简单可以记忆为样本数据(Sample Data)求方差除以
The Population:
Variance: σ2=∑(xi−μ)2N
Stand Deviation:σ=σ2−−√
A Sample
Variance:s2=∑(xi−μ)2N−1
Stand Deviation:s=s2−−√
下面给出MATLAB的
由结果知var()函数是以求样本方差的公式计算的,那么怎么求总体方差呢?通过查看帮助文档可以发现
同理,对于std()求标准差的也是通过修改参数实现不同的算法
当分析数据为总体(Population)和样本(Sample)时方差和标准差的计算方式又有不同,简单可以记忆为样本数据(Sample Data)求方差除以
n-1,总体数据(The Population )求方差除以
n,公式如下:
The Population:
Variance: σ2=∑(xi−μ)2N
Stand Deviation:σ=σ2−−√
A Sample
Variance:s2=∑(xi−μ)2N−1
Stand Deviation:s=s2−−√
下面给出MATLAB的
var()和
std()函数的运算结果
test=[4 5 6 3 5 7 2]; %随机给出一组数据 m=mean(test) var1=sum((test(1,:)-m).^2)/length(test) %用总体数据公式定义的方法求方差 var2=sum((test(1,:)-m).^2)/(length(test)-1) %求样本数据的方差 var3=var(test) %用var函数计算 得到如下结果: m = 4.571428571428571 var1 = 2.530612244897959 var2 = 2.952380952380953 var3 = 2.952380952380953
由结果知var()函数是以求样本方差的公式计算的,那么怎么求总体方差呢?通过查看帮助文档可以发现
var(data,1)即后面加个参数1就可以求总体方差了,函数var()默认的参数是0,也就是求样本方差
var4=var(test,1) 结果如下: var4 = 2.530612244897959
同理,对于std()求标准差的也是通过修改参数实现不同的算法
std1=std(test,0) %默认参数就是0来的 std2=sqrt(var(test,0)) std3=std(test,1) %选择参数为1 std4=sqrt(var(test,1)) 结果如下: std1 = 1.718249385968449 std2 = 1.718249385968449 std3 = 1.590789817951435 std4 = 1.590789817951435
相关文章推荐
- Matlab交叉验证函数——crossvalind
- matlab conv2形象理解
- 《单幅圆形鱼眼图像的校正》matlab程序
- matlab plot三维图形
- Matlab 的reshape函数
- Matlab生成M序列的伪随机码
- matlab画图函数plot
- matlab曲线拟合
- 在Matlab中调用ZXing的代码生成QR二维码
- Matlab调用ZXing的详细步骤——二维码生成
- MATLAB7.0在window7下的安装
- Matlab变量及其含义
- Matlab----画彩图
- MATLAB 与python reshape 比较
- 嵌套乘法求函数值(Matlab)
- 二分法求方程的根(Matlab)
- 均匀量化(Matlab)
- KNN算法中常用的距离计算公式
- Mac OS环境下的libsvm在Matlab中安装
- 分治思想 - 二分搜索技术 - MATLAB代码 list是数据集合,x是要查找的数据。