我一直在尝试scipy.mstats.zscore一个有意组织成嵌套列表的数据集,它给出了:
TypeError: unsupported operand type(s) for /: 'list' and 'long'
这可能表明scipy.stats不适用于嵌套列表。
我能做些什么呢?当以"子集"方式应用于数据集时,for
循环是否会影响 zscore 的性质?
例如
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)
与
zscore_dataset = []
for zscore_list in zscore_dataset,
list = zscore(zscore_list)
zscore_dataset.append(zscore_dataset)
您需要将其应用于反映嵌套列表的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)
工作正常。