2

我想做一个模拟目录。我可以访问两组真实数据,我想使用它们的属性来生成模拟目录:一个包含来自幅度红移( z) 的信息。第二组包含有关星系大小加权椭圆率的信息。

在我最终的模拟目录中,我想生成redshiftweighted ellipticity。我想使用幅度红移幅度加权椭圆度的基本属性。但是,我也有一个定义明确的公式来描述红移的分布,其功能如下(GeneralRandom是一个能够生成遵循给定分布的随机样本的类p(z)):

ng=24000
def p(z):
    z0=1./3.;eta=1.0
    value=eta*(z**2)*np.exp(-1*(z/z0)**eta)/scipy.special.gamma(3./eta)/z0**3 
    return value

catalogue_generate=GeneralRandom(x=np.arange(0.0, 1.5, .001), p_func=p, Nrl=10000)

catalogue_generate.set_pdf(np.arange(0.0, 1.5, .001), catalogue_generate.p_val, 10000)
redshift=catalogue_generate.random( ng)[0]
redshift=random.sample(redshift, ng)

我使用定义的红移分布函数通过上述过程对红移进行采样。现在我很困惑如何将kde两个分布的计算值结合起来并估计我感兴趣的参数,例如 weighted ellipticity来自采样的模拟目录redshift?该图说明了从两个已知的真实数据集估计的高斯 KDE 。我不知道如何独立使用 的输出stats.gaussian_kde来插入计算redshift并获得相应的magnitude跟随2D kde,然后从magnitude上一步中的估计,估计 KDEmagnitudeweight估计weighted ellipticities输入redshift?说这个问题看起来像这样在统计上是否正确:

在此处输入图像描述

我也不知道计算,应该怎么做?!

如果有人能描述我如何解决我的问题以及一些 python 编程技巧或介绍有用的库,我将不胜感激。 在此处输入图像描述

4

1 回答 1

2

令 R = 红移,M = 幅度,W = 重量。如果我理解正确,您正在尝试从 P(W, R) 中采样。

鉴于手头的数据,您没有足够的信息来获得完整的解决方案:请注意 P(W, R) = P(W | R) P(R) 其中 P(W | R) = \int P(W, M | R) dM = \int P(W | M, R) P(M | R) dM。您可以从您有数据的 P(M, R) 导出 P(M | R),但您没有数据可以导出 P(W | M, R) - 您只有 P(W, M) 所以你可以推导出 P(W | M) 但不能推导出 P(W | M, R)——为了取得进展,如果你已经有了 M,你必须假设 R 不会给你更多关于 W 的信息。我没有对您的问题领域一无所知-您必须研究该假设以说明它是否合理。

假设 P(W | M, R) = P(W | M) 是一个合理的假设,您可以通过从 P(R)、然后 P(M | R)、然后 P(W | M) 进行采样来得到一对(R,W)。对于 P(M | R) 和 P(W | M) 采样,您需要从核密度派生的条件分布中进行采样。我目前没有公式,但我认为它相对简单。也许明天我会继续工作,我今晚没有时间。

于 2014-06-16T04:17:19.697 回答