Wolfram mathematica 随机泊松噪声
我正在寻找Mathematica中以下Matlab函数的等效项: R=poissrnd(lambda)通过平均参数lambda从泊松分布生成随机数。lambda可以是向量、矩阵或多维数组。R的大小是lambda的大小 下面是函数输出的示例Wolfram mathematica 随机泊松噪声,wolfram-mathematica,poisson,Wolfram Mathematica,Poisson,我正在寻找Mathematica中以下Matlab函数的等效项: R=poissrnd(lambda)通过平均参数lambda从泊松分布生成随机数。lambda可以是向量、矩阵或多维数组。R的大小是lambda的大小 下面是函数输出的示例 b = 95.7165 95.7165 95.7165 95.7165 95.7165 98.9772 98.9772 98.9772 98.9772 0.3876 poissrnd(b) ans =100 115
b = 95.7165 95.7165 95.7165 95.7165 95.7165 98.9772 98.9772 98.9772 98.9772 0.3876
poissrnd(b)
ans =100 115 81 90 109 106 104 87 104 2
我怎样才能在Mathematica 8中做类似的事情呢?通过阅读大量的在线Mathematica文档,特别是关于Mathematica及其绘图示例的部分,它为您指明了方向。这将允许您计算分布值 请注意,根据我个人的经验,对于简单的发行版,只需插入发行版的公式并使用它,而不是花哨的
PDF
方法,速度会更快。泊松分布并不太复杂。仅为整数定义泊松分布。因此,您需要使用类似的:
用法:
b = {95.7165, 95.7165, 95.7165, 95.7165, 95.7165, 98.9772, 98.9772,
98.9772, 98.9772, 0.3876};
poissrnd /@ b
Out[1] = {104, 97, 67, 84, 96, 123, 93, 96, 100, 0}
或者,您可以使用
In[2]:= lambda = {1.0, 2.05, 11.04}
Out[2]= {1., 2.05, 11.04}
In[3]:= Map[RandomVariate[PoissonDistribution[#]] &, lambda]
Out[3]= {0, 3, 11}
In[2]:= lambda = {1.0, 2.05, 11.04}
Out[2]= {1., 2.05, 11.04}
In[3]:= Map[RandomVariate[PoissonDistribution[#]] &, lambda]
Out[3]= {0, 3, 11}