【发布时间】:2012-04-10 04:41:25
【问题描述】:
我有一个表格 Y 的数组(这只是一个例子,我在这个表格中有大量数据)。该数组是通过使用numpy的vstack和hstack形成的(即我不想改变我获得这个数组的方式,因为我已经通过一些复杂的操作获得了它):
Y=array([[1, 1,2],
[1, 2,0],
[-1, 3,1],
[-1, 2,2]])
y=[1,1,-1,-1]
Y1=list(Y)
现在我将数据输入到 libsvm 函数中,该库希望输入参数为字典、列表或元组形式。因此,相同的代码是:
prob=svm_problem(y, Y1)
上面的函数抛出一个错误,'xi 应该是一个字典、列表或元组'。我知道的另一种方法是将 Y 迭代地转换为列表。这样做的方式是:
Y1=[]
for i in range(0, Y.shape[0]):
Y1.append(list(Y[i])
上述方法效果很好,但考虑到我拥有的大量数据,速度很慢。有没有更快的方法来完成同样的事情?
【问题讨论】:
标签: python numpy scipy python-2.7 libsvm