如何为 sklearn svm 塑造训练和测试数据

How to shape train and test data for sklearn svm

我正在使用 pandas 库来提取数据并使用它来提供 svc 分类器,如下所示:

from sklearn.svm import SVC
import pandas as pd

train = pd.read_csv('train.csv')
X_train = train['FunctionalWordPercent']
Y_train  = train['openness']

test = pd.read_csv('test.csv')
X_test = test['FunctionalWordPercent']
Y_test  = test['openness']

clf = SVC()
clf.fit(X_train, Y_train) 
SVC(kernel="linear", c=1.0)

print(clf.score(X_test,Y_test))

但我不断收到以下错误:

Reshape your data either using array.reshape(-1, 1) if your data has a single feature or array.reshape(1, -1) if it contains a single sample.

看起来您正在为 X 使用单列(特征)。要使此代码正常工作,您需要执行以下操作:

X_train = train['FunctionalWordPercent']
X_train = X_train.reshape(-1,1)


X_test = test['FunctionalWordPercent']
X_test = X_test.reshape(-1,1)