实例1:创建一个矩阵并计算矩阵每列元素的标准差

实例2:创建一个矩阵并计算矩阵每行元素的标准差

实例3:创建一个三维数组并计算沿第一维度元素的标准差

实例4:创建一个矩阵并根据权重向量计算矩阵每列元素的标准差

实例5:创建一个三维数组并计算特定切片(维度1*维度2)元素的标准差

实例6:创建一个向量并计算其标准差(不包括NaN值)

本例程配套完整源码和绘图资料下载

标准差:

对于由 N 个标量观测值组成的随机变量 A,标准差S定义为:

其中均值  定义为:   

语法描述:

S = std(A)   返回 A 沿大小不等于 1 的第一个数组维度的元素的标准差

  • 如果 A 是观测值的向量,则标准差为标量。

  • 如果 A 是一个列为随机变量且行为观测值的矩阵,则 S 是一个包含与每列对应的标准差的行向量

  • 如果 A 是一个多维数组,则 std(A) 会沿大小不等于 1 的第一个数组维度计算,并将这些元素视为向量。此维度的大小将变为 1,而所有其他维度的大小保持不变。

  • 默认情况下,标准差按 N-1 实现归一化,其中 N 是观测值数量

S = std(A,w)  为上述任意语法指定一个权重方案。当 w = 0 时(默认值),S 按 N-1 进行归一化。当 w = 1 时,S 按观测值数量 N 进行归一化w 也可以是包含非负元素的权重向量。在这种情况下,w 的长度必须等于 std 将作用于的维度的长度。    当 w 为 0 或 1 时,S = std(A,w,'all') 计算 A 的所有元素的标准差。此语法适用于 MATLAB® R2018b 及更高版本

S = std(A,w,dim)  使用上述任意语法沿维度 dim 返回标准差。要维持默认归一化并指定操作的维度,请在第二个参数中设置 w = 0

当 w 为 0 或 1 时,S = std(A,w,vecdim) 计算向量 vecdim 中指定维度的标准差。例如,如果 A 是矩阵,则 std(A,0,[1 2]) 计算 A 中所有元素的标准差,因为矩阵的每个元素包含在由维度 1 和 2 定义的数组切片中

S = std(___,nanflag)  指定在上述任意语法的计算中包括还是忽略 NaN 值。例如,std(A,'includenan') 包括 A 中的所有 NaN 值,而 std(A,'omitnan') 则会忽略这些值

实例1:创建一个矩阵并计算矩阵每列元素的标准差

A = [4 -5 1; 2 3 5; -9 1 7];    %创建一个3*3矩阵A
S = std(A)                      %计算矩阵A每列元素的标准差

矩阵A为:

矩阵A每列元素对应的标准差为:

验证矩阵第一列(4 2 -9)标准差正确性:

均值  = (4+2-9)/3 = -1

标准差        可见与std函数计算结果一致

实例2:创建一个矩阵并计算矩阵每行元素的标准差

A = [6 4 23 -3; 9 -10 4 11; 2 8 -5 1];    %创建一个3*4矩阵A
S = std(A,0,2)                      %计算矩阵A每行元素的标准差

矩阵A为:                                          矩阵A每列元素对应的标准差为:

     

验证矩阵第三行(2 8 -5 1)标准差正确性:

均值  = (2+8-5+1)/4 = 1.5

标准差        可见与std函数计算结果一致

实例3:创建一个三维数组并计算沿第一维度元素的标准差

close all; clear all;      %关闭窗口,清空数据
%创建一个三维数组,并计算沿第一个维度的标准差
A(:,:,1) = [2 4; -2 1];   %三维数组第三维度的第一页
A(:,:,2) = [9 13; -5 7];  %三维数组第三维度的第二页
A(:,:,3) = [4 4; 8 -3];   %三维数组第三维度的第三页
S = std(A)                %计算沿第一个维度的标准差   

矩阵A(第三维度的第一、第二、第三页)分别为:

            

矩阵A(第三维度的第一、第二、第三页)沿第一维度元素的标准差分别为:

      

验证矩阵第三维度的第二页第一列(9  -5)标准差正确性:

均值  = (9-5)/2 = 2

标准差        可见与std函数计算结果一致

注:对于上例中3*4的矩阵A,行是维度1(矩阵A对应的是3行),列是维度2(矩阵A对应的是4列),如下图所示:

实例4:创建一个矩阵并根据权重向量计算矩阵每列元素的标准差

close all; clear all;      %关闭窗口,清空数据
%创建一个矩阵A,并根据权重向量 w 计算每一列的标准差
A = [1 5; 3 7; -9 2];      %矩阵A
w = [1 1 0.5];             %权重向量w
S = std(A,w)               %根据权重计算矩阵A每一列的标准差

矩阵A为:                                     权重向量w为:

       

矩阵A每列元素对应的标准差为:

实例5:创建一个三维数组并计算特定切片(维度1*维度2)元素的标准差

close all; clear all;      %关闭窗口,清空数据
%创建一个三维数组A,并计算第三维中每页所有数据(行和列)的标准差
A(:,:,1) = [2 4; -2 1];    %维度3的切片1
A(:,:,2) = [9 13; -5 7];   %维度3的切片2
A(:,:,3) = [4 4; 8 -3];    %维度3的切片3
S = std(A,0,[1 2])         %计算矩阵A每个切片所有元素的标准差

                          

三维数组A                                        第三维度进行切片

矩阵A(第三维度的第一、第二、第三页)分别为:

        

矩阵A(第三维度的第一、第二、第三页)所有元素的标准差分别为:

            

验证矩阵A第三维度的第一页(2 4 -2 1)标准差正确性:

均值  = (2 + 4 - 2 + 1)  / 4 = 5/4

标准差        可见与std函数计算结果一致

实例6:创建一个向量并计算其标准差(不包括NaN值)

close all; clear all;      %关闭窗口,清空数据
%创建一个向量A,并计算其标准差(不包含NaN值)
A = [1.77 -0.005 3.98 -2.95 NaN 0.34 NaN 0.19];  %向量A
S = std(A,'omitnan')                             %标准差S

向量A为:                                                                          向量A的所有元素的标准差S为:

      

验证向量A标准差正确性:

均值  = (1.77 - 0.005 + 3.98 - 2.95 + 0.34 + 0.19)  / 6 = 3.325/6

标准差 

     可见与std函数计算结果一致

输入参数:

1、输入数组A-----指定为向量、矩阵或多维数组

如果 A 是一个标量,则 std(A) 返回 0

如果 A 是一个 0×0 的空数组,则 std(A) 返回 NaN

2、权重w-------指定为非负数标量

  • 0 - 按 N-1 实现归一化,其中 N 是观测值的数量。如果只有一个观测值,则权重为 1。

  • 1 - 按 N 实现归一化。

  • 由非负标量权重构成的向量,这些权重对应于沿其计算方差的A 维度

3、维度dim-------指定为正整数标量

如果未指定值,则默认值是大小不等于 1 的第一个数组维度。维度 dim 表示长度减至 1 的维度。size(S,dim) 为 1,而所有其他维度的大小保持不变。以一个二维输入数组 A 为例。

如果 dim = 1,则 std(A,0,1) 返回包含每一列中元素的标准差的行向量

如果 dim = 2,则 std(A,0,2) 返回包含每一行中元素的标准差的列向量

4、NaN 条件-------指定为 'includenan'或 'omitnan'

  • 'includenan' - 计算总和时包括 NaN 值,生成 NaN

  • 'omitnan' - 忽略输入中的所有 NaN 值。

注:标准差是方差的平方根。有些标准差的定义使用 N(而非 N-1)的归一化因子,这种情况下您可以通过将 w 设置为 1 来进行指定

参考链接

Matlab结果性能评价---std函数(计算矩阵、数组和向量元素标准差)相关推荐

  1. QT/C++/Eigen 自己实现的MATLAB中的std()函数,矩阵按照列求标准差

    QT / C++ / Eigen 自己实现的MATLAB中的std()函数,矩阵按照列求标准差 //定义一个按列求标准差的函数,其中A为被求列标准差的矩阵,OutputMatrix为求出的列标准差 v ...

  2. matlab中的isreal函数,matlab线代 isreal函数检测矩阵的复数元素

    1 code clear clc a=[1+1i 0 3;2+2i 11 22] sizeOfA=size(a) %a矩阵有多少行 countOfRow=sizeOfA(1) %a矩阵有多少列 cou ...

  3. Matlab函数学习---sum函数(计算矩阵、数组和向量元素总和)

    实例1:创建一个向量并计算向量元素总和 实例2:创建一个矩阵并计算矩阵每列元素的总和 实例3:创建一个矩阵并计算矩阵每行元素的总和 实例4:创建一个三维数组并计算数组特定切片元素(维度1*维度2)的总 ...

  4. python使用numpy中的np.mean函数计算数组的均值、np.var函数计算数据的方差、np.std函数计算数组的标准差

    python使用numpy中的np.mean函数计算数组的均值.np.var函数计算数据的方差.np.std函数计算数组的标准差 目录

  5. 绘制卡方分布的概率密度函数 matlab,MATLAB如何使用chi2pdf函数计算卡方分布的概率密度...

    MATLAB如何使用chi2pdf函数计算卡方分布的概率密度 [语法说明] Y=chi2pdf(X,V):函数计算X中的元素在参数V指定的卡方分布下的概率密度函数值.如果输入参数中有一个为标量,则将其 ...

  6. matlab泊松分布参数,MATLAB如何使用poisspdf函数计算泊松分布的概率

    MATLAB如何使用poisspdf函数计算泊松分布的概率 [语法说明] Y=poisspdf(X,lambda):计算X中元素在参数lambda指定的泊松分布下的概率值.Y是与X.lambda同型的 ...

  7. matlab卡方分布函数,MATLAB如何使用ncx2pdf函数计算非中心卡方分布的概率密度

    MATLAB如何使用ncx2pdf函数计算非中心卡方分布的概率密度 [语法说明] Y=ncx2pdf(X,V,DELTA):计算X中各元素在参数V.DELTA指定下的非中心卡方分布概率密度函数值.X与 ...

  8. matlab分布函数逆函数,MATLAB如何使用icdf函数计算指定分布的逆累积分布

    MATLAB如何使用icdf函数计算指定分布的逆累积分布 [语法说明] Y=icdf('name',X,A) Y=icdf('name',X,A,B) Y=icdf('name',X,A,B,C) 字 ...

  9. matlab韦伯分布,MATLAB如何使用wblpdf函数计算韦伯分布的概率密度

    MATLAB如何使用wblpdf函数计算韦伯分布的概率密度 [语法说明] Y=wblpdf(X,A,B):计算X中的元素在参数A.B指定的韦伯分布下的概率密度函数值.Y 是与 X.A.B 同型的数组, ...

最新文章

  1. 在CentOS 6.5 x86_64上安装libunwind的问题
  2. 信息安全管理体系 ISMS
  3. IntelliJ IDEA学习记录
  4. ehcache + mysql例子与性能测试
  5. 云服务器 VNC 远程连接
  6. 【转】RNN、LSTM、Transformer、BERT简介与区别
  7. python支持中文路径_打开python遍历中文目录得到的文件路径报错
  8. 弹出无边框网页的Javscrpt代码
  9. C++--第26课 - 异常处理 - 下
  10. 三菱伺服驱动器示例_三菱MRJB伺服放大器应用实例
  11. Python百行代码随机生成姓名
  12. 如何通过F12开发者工具保存网页中想要的视频资源
  13. 一元三次方程求根公式详细逐步推导
  14. 机器学习(回归五)——线性回归-局部加权线性回归
  15. 年收入30万的家庭如何买保险最划算?
  16. 在linux下用c语言编程软件下载,在Linux下进行C语言编程
  17. 厘米换算英尺英寸 (15 分)
  18. hdu-5976 Detachment 解题报告(乘法逆元、贪心?)
  19. 【论文阅读】Underwater Image Enhancement: Using Wavelength Compensation and Image Dehazing(WCID)
  20. 如何实现WiFi与5G无缝切换?如何进行无线通信切换测试?(一)

热门文章

  1. ECharts绘制折线图
  2. 基于微信小程序的预约挂号系统
  3. 状态压缩 动规 海贼王 大作业
  4. VMware——网络服务IIS配置
  5. Java Springboot 微信第三方支付 证书认证绑定 Docker导入CER证书
  6. Swagger UI简介
  7. bibtex到bibitem的转换的超详细教程(获取参考文献的bibitem)
  8. 马云清华毕业典礼演讲:30年来我只坚持三件事
  9. 国内maven仓库镜像地址
  10. 史蒂芬周博客打不开怎么办?