我下面這個教程,使這個ML預測:使用Python 3.6Python腳本錯誤「預期的二維數組,而不是1D數組:」?
import numpy as np
import matplotlib.pyplot as plt
from matplotlib import style
style.use("ggplot")
from sklearn import svm
x = [1, 5, 1.5, 8, 1, 9]
y = [2, 8, 1.8, 8, 0.6, 11]
plt.scatter(x,y)
plt.show()
X = np.array([[1,2],
[5,8],
[1.5,1.8],
[8,8],
[1,0.6],
[9,11]])
y = [0,1,0,1,0,1]
X.reshape(1, -1)
clf = svm.SVC(kernel='linear', C = 1.0)
clf.fit(X,y)
print(clf.predict([0.58,0.76]))
Im和我得到錯誤「預期二維數組,得到了一維數組,而不是:」我 覺得劇本是爲舊版本,但我不知道如何將其轉換爲3.6版本。
已經與嘗試:
X.reshape(1, -1)
哪一行產生錯誤? – stackoverflowuser2010
'X = X.reshape(1,-1)'。重塑不在原位。 –
@ stackoverflowuser2010:我猜猜最後一行'clf.predict()',因爲'X'已經是二維的了(無用的''重塑'儘管如此)。 –