我不知道我的代码是否正确。但是我得到了错误:
错误的输入形状(1,301)
from sklearn import svm
import pandas as pd
clf = svm.SVC(gamma='scale')
df = pd.read_csv('C:\\Users\\Armin\\Desktop\\heart.csv')
x = [df.age[1:302], df.sex[1:302], df.cp[1:302], df.trestbps[1:302], df.chol[1:302], df.fbs[1:302], df.restecg[1:302], df.thalach[1:302], df.exang[1:302], df.oldpeak[1:302], df.slope[1:302], df.ca[1:302], df.thal[1:302]]
y = [df.target[1:302]]
clf.fit(x, y)
答案 0 :(得分:1)
这是一个非常简单的修复程序。
您需要df
中x
中target
中的所有列,为此,只需执行以下操作:
x = df.drop('target', axis=1)
您的target
列将为:
y = df['target']
现在执行您的fit
:
clf.fit(x, y)
它将起作用。
list
中的Series
。但是,您只需要做的就是直接从数据框中传递功能集和目标的实际值。
更多参考资料可帮助您入门并继续: