Python中的Fisher z变换?

机器算法验证 相关性 样本量 Python 费雪变换
2022-04-01 07:38:21

我想测试样本相关性r意义(n=16),在 Python 中使用 p 值。正如我从这个问题中了解到的那样,我可以通过使用 Fisher 的 z 变换来实现这一点。

是否有 Python 模块,可以轻松使用 Fisher 的 z 变换?

我无法在SciPyStatsmodels中找到该功能。到目前为止,我不得不编写自己凌乱的临时函数:

import numpy as np
from scipy.stats import zprob
def z_transform(r, n):
    z = np.log((1 + r) / (1 - r)) * (np.sqrt(n - 3) / 2)
    p = zprob(-z)
    return p
1个回答

Fisher 变换等于反双曲正切‌​/arctanh,例如在numpy中实现。可以类似地处理Fisher逆变换/tanh

此外,Pearson 相关性的 numpy 函数也给出了p值。