在这个练习中,我只能使用numpy,所以我不能直接使用scikit-learn。
我已经加载了数据集,并成功将其拆分为正面和负面数组。然而,我现在不知道该做什么,甚至不知道我处理数据以供分类器使用的方法是否正确。
datasettrain = np.loadtxt("Adaboost-trainer.txt")negtrain, postrain = np.delete(datasettrain[datasettrain[:,2] < 0],2,1), np.delete(datasettrain[datasettrain[:,2] > 0],2,1)clf = Adaboost(n_clf=5)clf.fit(postrain, negtrain)
我知道应该输入特征和标签,但数据必须以不同的格式提供,而不是仅仅是一个普通的文本文件?至少我以前接收到的数据都是标记有特征和标签的,我可以通过拆分这些数据来输入。有人有什么想法如何将一个普通的文本文件处理成特征和标签吗?
编辑
1.116574 0.157686 +1-0.359096 0.653998 -1 1.845620 0.873235 +1-0.271484 -0.960392 -1 0.304631 2.797998 +1
回答:
啊,如果我正确理解了你的样本数据,前两列是你的特征列,最后一列是你的目标值。如果这是正确的,那么要获得训练和测试集,你需要做类似下面的操作:
这样,你就有了80/20的训练/测试数据拆分,可以用于模型。