确定随机变量的概率质量函数 [英] Determining probability mass function of random variable

查看:88
本文介绍了确定随机变量的概率质量函数的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

如果我们有一个离散随机变量x,并且它的相关数据在X(n)中,那么在matlab中如何确定概率质量函数pmf(X)?

If we have a discrete random variable x and the data pertaining to it in X(n), how in matlab can we determine the probability mass function pmf(X)?

推荐答案

您可以至少以八种不同的方式进行此操作(其中一些已在其他解决方案中提及).

You can do this in at least eight different ways (some of them were already mentioned in the other solutions).

假设我们有一个来自离散随机变量的样本:

Say we have a sample from a discrete random variable:

X = randi([-9 9], [100 1]);

考虑这些等效的解决方案(请注意,我对可能值的范围不做任何假设,只是它们是整数):

Consider these equivalent solutions (note that I don't assume anything about the range of possible values, just that they are integers):

[V,~,labels] = grp2idx(X);
mx = max(V);

%# TABULATE (internally uses HIST)
t = tabulate(V);
pmf1 = t(:, 3) ./ 100;

%# HIST (internally uses HISTC)
pmf2 = hist(V, mx)' ./ numel(V);                      %#'

%# HISTC
pmf3 = histc(V, 1:mx) ./ numel(V);

%# ACCUMARRAY
pmf4 = accumarray(V, 1) ./ numel(V);

%# SORT/FIND/DIFF
pmf5 = diff( find( [diff([0;sort(V)]) ; 1] ) ) ./ numel(V);

%# SORT/UNIQUE/DIFF
[~,idx] = unique( sort(V) );
pmf6 = diff([0;idx]) ./ numel(V);

%# ARRAYFUN
pmf7 = arrayfun(@(x) sum(V==x), 1:mx)' ./ numel(V);   %#'

%# BSXFUN
pmf8 = sum( bsxfun(@eq, V, 1:mx) )' ./ numel(V);      %#'

请注意,使用GRP2IDX来获取从1开始的索引,该索引对应于pmf的条目(映射由labels给出).上面的结果是:

note that GRP2IDX was used to get indices starting at 1 corresponding to the entries of pmf (the mapping is given by labels). The result of the above is:

>> [labels pmf]
ans =
           -9         0.03
           -8         0.07
           -7         0.04
           -6         0.07
           -5         0.03
           -4         0.06
           -3         0.05
           -2         0.05
           -1         0.06
            0         0.05
            1         0.04
            2         0.07
            3         0.03
            4         0.09
            5         0.08
            6         0.02
            7         0.03
            8         0.08
            9         0.05

这篇关于确定随机变量的概率质量函数的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆