ValueError Expected 2D array got 1D array instead
分享一下我老师大神的人工智能教程!零基础,通俗易懂!http://blog.****.net/jiangjunshow
也欢迎大家转载本篇文章。分享知识,造福人民,实现我们中华民族伟大复兴!
1.你也可能是这种
修改前 test_prediction = svc.predict(hog_features.reshape) 修改后 test_prediction = svc.predict(hog_features.reshape(1,-1))
2.这种可能
import numpy as npimport matplotlib.pyplot as pltfrom matplotlib import stylestyle.use("ggplot")from sklearn import svmx = [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]))
就是没有满足2D都不涉及reshape
修改为
print(clf.predict([[0.58,0.76]]))
3.自己遇到的情况.fit_transform(dataset3_preds.label)出错
:参考
主要是工具包版本更新造成的,面对上面问题,我们根据上面错误的提示相应的找出出错的那行代码:
#修改前dataset3_preds.label = MinMaxScaler(copy=True,feature_range=(0,1)).fit_transform(dataset3_preds.label)
例如数据格式为[1, 2, 3, 4]就会出错,如果把这行数据转换成[[1], [2], [3], [4]]
dataset3_preds.label = MinMaxScaler(copy=True,feature_range=(0,1)).fit_transform(dataset3_preds.label.reshape(-1,1))#修改后
再运行程序,错误消除。