Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/293.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 一般分布的乘积_Python_Statistics_Scipy_Statsmodels_Pymc - Fatal编程技术网

Python 一般分布的乘积

Python 一般分布的乘积,python,statistics,scipy,statsmodels,pymc,Python,Statistics,Scipy,Statsmodels,Pymc,假设对于[0,1]之间的随机变量,我有两个非标准化的非参数分布,例如: unnormalized_pdf_A = abs(sin(linspace(1,10,100))) 及 我想获得变量C=A*B的pdf,以及它的一些基本统计数据(例如均值、方差和/或贝叶斯区间) 这在statsmodels、PyMC或scipy.stats中是否可行?如何开始处理此问题?这应该是您想要的,谢谢@jseabold。如果我没有弄错的话,您的帖子假设您可以直接从(参数)分布中进行采样(调用y=stats.beta

假设对于[0,1]之间的随机变量,我有两个非标准化的非参数分布,例如:

unnormalized_pdf_A = abs(sin(linspace(1,10,100)))

我想获得变量
C=A*B
的pdf,以及它的一些基本统计数据(例如均值、方差和/或贝叶斯区间)


这在
statsmodels
PyMC
scipy.stats
中是否可行?如何开始处理此问题?

这应该是您想要的,谢谢@jseabold。如果我没有弄错的话,您的帖子假设您可以直接从(参数)分布中进行采样(调用
y=stats.beta(.5.9)。rvs(N)
进行采样)。在我的例子中,我所拥有的只是定义在0到1之间的非规范化函数。我知道一旦我有了样本,我就可以将它们相乘(问题的目的)并拟合
sm.nonparametric.KDEUnivariate(样本)
,以获得PDF。因此,问题是从OP中的函数中获取样本。对此有什么想法吗?实际上,beta版的绘图有一个封闭形式的解决方案,所以我不需要在那里采样。我只是碰巧从那个例子中的beta分布中画出了一个例子来说明做你想做的事情的一般方法(我认为),但是你可以把你的随机值细分为(0,1)。绘制后步骤中的KDE估计器不知道这是来自beta分布的绘制。如果降低样本量,PDF看起来就不会像参数化的beta版。
unnormalized_pdf_B = abs(cos(linspace(1,10,100)))