迹忆客 专注技术分享

当前位置:主页 > 学无止境 > 编程语言 > MATLAB >

MATLAB 中的 mvnpdf() 函数

作者:迹忆客 最近更新:2023/03/19 浏览次数:

本文将讨论使用 MATLAB 中的 mvnpdf() 函数评估多元正态分布的概率密度函数。

在 MATLAB 中使用 mvnpdf() 函数

广义版本的单变量正态分布对两个或多个变量的多元正态分布。多元正态分布有两个与单变量正态分布相似的参数,包括协方差矩阵和均值向量。

协方差矩阵的非对角元素包含变量之间的协方差,协方差矩阵的对角元素包含每个变量的方差。在 MATLAB 中,我们使用 mvnpdf() 函数来查找多元正态分布的概率密度函数。

mvnpdf() 函数具有以下三种语法。

语法:

output = mvnpdf(input)
output = mvnpdf(input, mu)
output = mvnpdf(input, mu, sigma)

output = mvnpdf(input) 将返回概率密度函数作为输入矩阵的 n×1 向量,包含维度 m 的多元正态分布。该函数将沿维度 n×m 评估每个输入矩阵行的输出。

output = mvnpdf(input, mu) 将根据 mu 变量返回概率密度函数,该变量定义了多元正态分布的平均值。第三种语法还将包括变量 sigma,它定义了多元正态分布的协方差。

output = mvnpdf(input, mu, sigma) 中,如果我们只想指定 sigma 的值并且我们想使用 mu 的默认值,我们可以传递一个空向量作为 mu 变量作为第二个参数,并将 sigma 的值设置为第三个参数。我们可以使用 mvnrnd() 函数来创建包含随机数的多元正态分布矩阵。

为了创建随机多元正态分布,我们必须在 mvnrnd() 函数中传递 musigma 变量的值。我们还可以通过将数字定义为 mvnrnd() 函数中的第三个参数来设置输出矩阵的行数。

例如,让我们使用 mrnrnd() 函数创建一个多元正态分布的随机矩阵,然后使用 mvnpdf() 函数找到它的概率密度函数。

示例代码:

mu_v = zeros(1,4);
Sigma_m = eye(4);
rng('default')
random_mvn = mvnrnd(mu_v,Sigma_m,6)
out_pdf = mvnpdf(random_mvn)

输出:

random_mvn =

    0.5377   -0.4336    0.7254    1.4090
    1.8339    0.3426   -0.0631    1.4172
   -2.2588    3.5784    0.7147    0.6715
    0.8622    2.7694   -0.2050   -1.2075
    0.3188   -1.3499   -0.1241    0.7172
   -1.3077    3.0349    1.4897    1.6302

out_pdf =

    0.0057
    0.0016
    0.0000
    0.0002
    0.0074
    0.0000

我们使用 zeros() 函数为 mu 变量创建向量,使用 eye() 函数为 sigma 变量创建矩阵,并使用 rng() 函数来控制随机数字生成器,我们已将其设置为默认值以实现可重复性。上面的输出显示了多元正态分布的随机矩阵和包含概率密度函数值的向量。

假设我们要根据不同的均值求某些点的概率密度函数。我们可以将 mu 变量中的平均值定义为 mvnpdf() 函数中的第二个参数。

mu 矩阵大小应与多元正态分布的输入矩阵大小相同。

假设我们要在某些点根据不同的协方差值求概率密度函数。我们可以将 sigma 变量中的协方差值定义为 mvnpdf() 函数内的第三个参数。

sigma 矩阵的列数应与多元正态分布输入矩阵的列数相同。如果我们想找到相同点的概率密度函数,我们可以在 mu 变量内部重复相同的点,默认情况下,mu 变量是一个零向量,sigma 变量是一个的矩阵。

查看此链接了解有关 mvnpdf() 函数的更多详细信息,或查看此链接了解 mvnrnd() 函数。

转载请发邮件至 1244347461@qq.com 进行申请,经作者同意之后,转载请以链接形式注明出处

本文地址:

相关文章

在 MATLAB 中注释多行

发布时间:2023/04/23 浏览次数:111 分类:MATLAB

可以使用注释块方法或 MATLAB 编辑器在 MATLAB 中注释多行。

MATLAB 最大索引

发布时间:2023/04/23 浏览次数:192 分类:MATLAB

在本教程中,我们将讨论如何使用 MATLAB 中的 max() 函数从数组及其索引中查找最大值。

MATLAB 索引超出矩阵尺寸

发布时间:2023/04/23 浏览次数:103 分类:MATLAB

要解决索引超出矩阵索引的问题,请检查你要获取或替换数据的索引。

MATLAB 检查变量类型

发布时间:2023/04/23 浏览次数:92 分类:MATLAB

在本教程中,我们将讨论如何使用 MATLAB 中的 class() 和 whos 函数检查给定变量的类型。

MATLAB vs Octave

发布时间:2023/04/23 浏览次数:74 分类:MATLAB

我们可以说 Octave 是 MATLAB 的免费版本。

MATLAB MAT 文件

发布时间:2023/04/23 浏览次数:89 分类:MATLAB

可以使用 MAT 文件在 MATLAB 中存储和加载格式化的数据。

MATLAB asv 文件

发布时间:2023/04/23 浏览次数:180 分类:MATLAB

.asv 文件是 MATLAB 生成的自动保存文件,因此在计算机崩溃时你不会丢失数据。

MATLAB 三元运算符

发布时间:2023/04/23 浏览次数:130 分类:MATLAB

MATLAB 中没有三元运算符,因此你必须使用标准格式。

MATLAB & vs &&

发布时间:2023/04/23 浏览次数:134 分类:MATLAB

在 MATLAB 中,&是逻辑与运算符,&&也是表现出短路行为的逻辑运算符。

扫一扫阅读全部技术教程

社交账号
  • https://www.github.com/onmpw
  • qq:1244347461

最新推荐

教程更新

热门标签

扫码一下
查看教程更方便