9

我有一组包含两个同样长的数据数组的数据,或者我可以制作一个包含两项条目的数组,我想计算数据表示的相关性和统计显着性(可能是紧密相关的,或者可能有无统​​计学显着相关性)。

我正在用 Python 编程并安装了 scipy 和 numpy。我查看并发现在Python 中计算 Pearson 相关性和显着性,但这似乎希望对数据进行操作,使其落入指定范围内。

我假设,要求 scipy 或 numpy 给我两个数组的相关性和统计显着性的正确方法是什么?

4

3 回答 3

7

如果你想计算皮尔逊相关系数,那么scipy.stats.pearsonr就是要走的路;虽然,意义只对更大的数据集有意义。此功能不需要将要操作的数据落入指定范围。相关性的值落在区间内[-1,1],也许这就是混乱?

如果重要性不是非常重要,您可以使用numpy.corrcoef().

Mahalanobis 距离确实考虑了两个数组之间的相关性,但它提供了距离度量,而不是相关性。(在数学上,马氏距离不是真正的距离函数;尽管如此,它可以在某些情况下如此使用,从而获得极大的优势。)

于 2012-06-20T14:55:29.943 回答
2

您可以使用这两个数组之间的马氏距离,其中考虑了它们之间的相关性。

该函数在 scipy 包中:scipy.spatial.distance.mahalanobis

这里有一个很好的例子

于 2012-06-20T14:37:19.887 回答
0

scipy.spatial.distance.euclidean()

这给出了 2 个点、2 个 np 数组、2 个列表等之间的欧几里得距离

import scipy.spatial.distance as spsd
spsd.euclidean(nparray1, nparray2)

你可以在这里找到更多信息http://docs.scipy.org/doc/scipy/reference/spatial.distance.html

于 2012-06-20T14:55:25.357 回答