瑞普利K函数估计量#

空间相关函数在天文学中被用来估计在给定的距离内发现另一个物体(如星系)的概率 [1].

Ripley的K函数是一种用来描述这种空间点过程相关性的估计量 [2], [3], [4], [5], [6]. 更准确地说,它描述了给定字段中对象之间的关联。这个 RipleysKEstimator 类实现了此函数的一些估计器,该函数提供了几种边缘效应校正方法。

基本用法#

瑞普利K函数估计量的实际实现在于该方法 evaluate ,采用以下参数: dataradii ,并且可以选择, mode .

这个 data 参数是一个二维数组,它表示研究区域中观察到的一组点(事件)。这个 radii 参数对应于一组距离,估计量将被计算。这个 mode 参数接受以下语言集上的值 {{none, translation, ohser, var-width, ripley}} ;每个关键字表示由于边缘效应而执行更正的不同方法。有关这些方法的详细信息,请参阅API文档和参考资料。

实例 RipleysKEstimator 也可以用作可调用项(相当于调用 evaluate 方法)。

例子#

astropy 的stats子包:

import numpy as np
from matplotlib import pyplot as plt
from astropy.stats import RipleysKEstimator

rng = np.random.default_rng()
z = rng.uniform(low=5, high=10, size=(100, 2))
Kest = RipleysKEstimator(area=25, x_max=10, y_max=10, x_min=5, y_min=5)

r = np.linspace(0, 2.5, 100)
plt.plot(r, Kest.poisson(r), color='green', ls=':', label=r'$K_{pois}$')
plt.plot(r, Kest(data=z, radii=r, mode='none'), color='red', ls='--',
         label=r'$K_{un}$')
plt.plot(r, Kest(data=z, radii=r, mode='translation'), color='black',
         label=r'$K_{trans}$')
plt.plot(r, Kest(data=z, radii=r, mode='ohser'), color='blue', ls='-.',
         label=r'$K_{ohser}$')
plt.plot(r, Kest(data=z, radii=r, mode='var-width'), color='green',
         label=r'$K_{var-width}$')
plt.plot(r, Kest(data=z, radii=r, mode='ripley'), color='yellow',
         label=r'$K_{ripley}$')
plt.legend()

(png, svg, pdf)

../_images/ripley-1.png

参考文献#