首页 > 解决方案 > 向量化 SVM 的文本

问题描述

我正在使用 sklearn 的 SVM 模块解决分类问题,但我一直坚持如何矢量化我的文本数据。我的数据是一堆氨基酸序列,它目前存储在这样的列表中:

[(1, 'SAEMVGRGSLGTVYRAVLSDGRMVAVKRLRDANPCARDE'),
(1, 'GVLVLEALTGKVPAQYPQPSPVVAADAA'),
(-1, 'ACDLCRYRRIRCDGEKPACETCRLAGVSCVFTPRVGQRK'),
(-1, 'PVVAADAAAADAQRKDKRCSTAVSLPEWVRSVVR')]

1 代表“正”样本,-1 代表“负”样本。

我尝试将这些数据作为文本输入到 SVM 中,如下所示:

classifier = svm.NuSVC(gamma='scale')
classifier.fit( [a[1] for a in train_total], [a[0] for a in train_total] )

但是我收到一个关于无法将字符串转换为浮点数的错误。我知道这意味着我需要先对数据进行矢量化/标记化,但我不确定如何。

标签: pythonpython-3.xscikit-learn

解决方案


推荐阅读