【发布时间】:2012-11-07 03:17:18
【问题描述】:
我正在尝试计算列表中每个项目之间的 Pearson 相关性。我正在尝试获取 data[0] 和 data[1]、data[0] 和 data[2]、data[1] 和 data[2] 之间的相关性。
import scipy
from scipy import stats
data = [[1, 2, 4], [9, 5, 1], [8, 3, 3]]
def pearson(x, y):
series1 = data[x]
series2 = data[y]
if x != y:
return scipy.stats.pearsonr(series1, series2)
h = [pearson(x,y) for x,y in range(0, len(data))]
这会在h 上返回错误TypeError: 'int' object is not iterable。有人可以在这里解释错误吗?谢谢。
【问题讨论】:
-
具体错误来自于尝试将
x, y分配给range(0, len(data))的一个元素——range的每个元素都只是一个整数,所以不能拆分分配到两个变量。
标签: python correlation