我一直在尝试scipy.mstats.zscore一个有意组织成嵌套列表的数据集,它给出了:
TypeError: unsupported operand type(s) for /: 'list' and 'long'
这可能表明scipy.stats不适用于嵌套列表。
我该怎么办?当以“子集”方式应用于数据集时,for
循环是否会影响zscore的性质?
e.g。
dataset = [[1.5,3.3,2.6,5.8],[1.5,3.2,5.6,1.8],[2.5,3.1,3.6,5.2]]
zscore_dataset = zscore(dataset)
VS
zscore_dataset = []
for zscore_list in zscore_dataset,
list = zscore(zscore_list)
zscore_dataset.append(zscore_dataset)
答案 0 :(得分:1)
您需要在反映嵌套列表的numpy.array
上应用它。
from scipy import stats
import numpy as np
dataset = np.array([[1.5,3.3,2.6,5.8],[1.5,3.2,5.6,1.8],[2.5,3.1,3.6,5.2]])
stats.mstats.zscore(dataset)
工作正常。