如何在 python 中计算点双列相关性
点双列相关用于测量二元变量 x 和连续变量 y 之间的关系。
与Pearson 相关系数类似,点双列相关系数取 -1 到 1 之间的值,其中:
- -1表示两个变量之间完全负相关
- 0 表示两个变量之间没有相关性
- 1 表示两个变量之间完全正相关
本教程介绍如何在 Python 中计算两个变量之间的点二列相关性。
示例:Python 中的点双列相关
假设我们有一个二元变量 x 和一个连续变量 y:
x = [0, 1, 1, 0, 0, 0, 1, 0, 1, 1, 0] y = [12, 14, 17, 17, 11, 22, 23, 11, 19, 8, 12]
我们可以使用 scipy.stats 库中的pointbserialr()函数来计算两个变量之间的点二列相关性。
请注意,此函数返回相关系数以及相应的 p 值:
import scipy.stats as stats #calculate point-biserial correlation stats. pointbiserialr (x,y) PointbiserialrResult(correlation=0.21816, pvalue=0.51928)
点双列相关系数为0.21816 ,相应的 p 值为0.51928 。
由于相关系数为正,这表明当变量x取值“1”时,变量y往往比变量x取值“0”时取更高的值。
由于该相关性的 p 值不小于 0.05,因此该相关性在统计上不显着。
您可以在 scipy.stats 文档中找到如何计算此相关性的确切详细信息。