我正在运行一个基本的机器学习教程代码片段(它在教学人员的计算机上正确编译),而且我似乎找不到出了什么问题。我知道这个问题已经被“回答”了,但我似乎无法理解答案。
DeprecationWarning:将1d数组作为数据传递在0.17中不推荐,在0.19中将提高ValueError。如果数据具有单个特性,则使用X.reshape(-1,1)或X.reshape(1,-1)对数据进行整形。DeprecationWarning)
显然,我只是使用X.reshape(-1,1)或X.reshape(1,-1),但我不确定它们在一般情况下是如何工作的,或者它们是否应该放置在我的绘图/数据之前或之后。
这是我的源代码。任何帮助都是非常感谢的:)
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]
clf = svm.SVC(kernel='linear', C = 1.0)
clf.fit(X,y)
print(clf.predict([0.58,0.76]))发布于 2016-08-24 19:30:09
由于您的数据有多个单一的特性,并且包含了多个示例,所以您很好。这只是一个警告,不应该干扰算法的行为。
https://stackoverflow.com/questions/39131424
复制相似问题