gpt4 book ai didi

python - 我可以在 python 中获得核密度估计的一阶导数吗?

转载 作者:行者123 更新时间:2023-11-28 22:43:01 24 4
gpt4 key购买 nike

我有一个二维数组数据,我使用 gaussian_kde 来估计数据分布。现在,我想获得结果密度估计器的一阶导数以获得零交叉点。是否有可能从估计的密度中得到它?如果是这样,Python 中是否有任何内置函数可以提供帮助?

最佳答案

遵循 gaussian_kde 文档中的示例,一旦你有了 Z,或者更一般地说,你在 X 轴上的密度估计,你就可以使用标准 numpy 函数计算它的导数:

diff = np.gradient(Z)

请注意 np.gradient计算中心差异。如果你想要前向差异,你可以这样做:

diff = np.r_[Z[1:] - Z[:-1], 0]

要找到过零点,您可以执行以下操作:

sdiff = np.sign(diff)
zc = np.where(sdiff[:-1] != sdiff[1:])

您可以将上面的二维扩展为 dy, dx = np.gradient(Z) with Z 二维数组。然后在Y和X两个方向上操作。

关于python - 我可以在 python 中获得核密度估计的一阶导数吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31291910/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com