gpt4 book ai didi

python - scipy:在哪里可以找到 scipy.special.betainc 的源代码?

转载 作者:太空宇宙 更新时间:2023-11-04 02:24:26 26 4
gpt4 key购买 nike

我正试图深入了解 stats.pearsonr为了我自己的理解。我想将 r, p = stats.pearsonr(x, y) 写成一些独立的代码(见下文)。我能够重现 r,但是 p 值计算使用 scipy.special.betainc。我翻遍了https://github.com/scipy/scipy/tree/master/scipy/special但找不到 betainc(我猜它可能是一些底层 C 代码)。知道在哪里可以找到它的源代码吗?

import numpy as np

x = np.random.rand(100)
y = np.random.rand(100)

n = len(x)
mx = x.mean()
my = y.mean()
xm, ym = x - mx, y - my
r_num = np.add.reduce(xm * ym)
r_den = np.sqrt(np.sum(xm*xm, 0) * np.sum(ym*ym, 0))
r = r_num / r_den
r = max(min(r, 1.0), -1.0)

df = n - 2
if abs(r) == 1.0:
p = 0.0
else:
t_squared = r**2 * (df / ((1.0 - r) * (1.0 + r)))
# Now code https://github.com/scipy/scipy/blob/14142ff70d84a6ce74044a27919c850e893648f7/scipy/stats/stats.py#L3020
_x = df/(df+t_squared)
_x = np.asarray(_x)
_x = np.where(_x < 1.0, _x, 1.0)
_a = 0.5*df
_b = 0.5
# Code special.betainc(_a, _b, _x)

最佳答案

scipy.special.betainc 基于 scipy/special/cephes/incbet.c 中的 incbet ,Cephes 数学库中的一个函数。

我通过 searching 找到了这个对于 SciPy Github 存储库中的 betainc,这让我找到了 scipy/special/functions.json , 这让我进入 incbet

关于python - scipy:在哪里可以找到 scipy.special.betainc 的源代码?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50806259/

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