从特定文本格式创建Numpy数组

时间:2015-03-28 12:42:04

标签: python numpy

我有一个包含训练向量的文本文件

<Vector 1-dimension 1>       <Vector 1 - dimension 2>   ....   <Vector 1 - dimension n>
.............  .............  .............  .............  .............  
<Vector m - dimension 1>     <Vector m - dimension 2>   ....   <Vector m - dimension n>

另一个文本文件提到了相应向量的类成员资格

Vector1-Class
Vector2-Class
.............
Vector n - Class

现在,我需要将它们转换为numpy数组X和Y,这样我就可以将它们作为Scikit Learn Linear SVM函数的输入;例如,在这个python代码中,

from sklearn import svm

X = [[1,1], [1,-1], [-1,1], [-1,-1]]
Y = [0, 1, 2, 3]
clf = svm.SVC()
clf.fit(X, Y)

我怎样才能做到这一点?

1 个答案:

答案 0 :(得分:0)

经过一番研究后,我使用了

X = np.genfromtxt("X.txt",delimiter=" ")
Y = np.genfromtxt("Y.txt",delimiter=" ")

实现同样的目标。

有没有更好的方法来实现同样的目标?另外,如果我的文本文件是以稀疏格式编写的,也就是说,如果只将非零元素作为有序对提及,那么如何才能获得相同的结果呢?