我试图运行SVM程序,但出现上述错误。代码在下面。请指出其中的错误。
import numpy as np
import pandas as pd
from sklearn import svm
from sklearn.model_selection import train_test_split
data = pd.read_csv('risk_factors_cervical_cancer.csv')
X = np.array(data[[#some data elements]])
y = np.array(data[#some data elements])
print(X)
print(y)
print(X.shape)
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.25,
random_state=30)
classifier = svm.SVC()
classifier.fit(X_train, y_train) #the error occurs here
y_pred = svm.predict(X_test)
acc = accuracy_score(y_test, y_pred)
`
答案 0 :(得分:0)
正如@Guimoute所写,为了使用任何机器学习算法训练数据,始终必须对数据进行预处理。尝试使用X.head(10)
来获得对所使用数据的介绍。发生您的错误是因为存在值“?”在您的X列中。将其替换为合理的数字(例如列的平均值),以获得更好的结果。