Python 了解Kneighbors分类器模块中的模块吗<;适合>;?
我有一个关于机器学习的考试项目。 我期望这些数据集的输出为1是或0否Python 了解Kneighbors分类器模块中的模块吗<;适合>;?,python,python-3.x,python-2.7,scikit-learn,ipython,Python,Python 3.x,Python 2.7,Scikit Learn,Ipython,我有一个关于机器学习的考试项目。 我期望这些数据集的输出为1是或0否 MinTemp=[8,14,13.7,13.3,7.6,6.2,6.1,8.3,8.8,8.4] MaxTemp=[24.3,26.9,23.4,15.5,16.1,16.9,18.2,17,19.5,22.8] Rainfall=[0,3.6,3.6,39.8,2.8,0,0.2,0,0,16.2] WindGustDir=[315,67.5,315,315,157.5,135,135,90,180,90] RISK_MM=
MinTemp=[8,14,13.7,13.3,7.6,6.2,6.1,8.3,8.8,8.4]
MaxTemp=[24.3,26.9,23.4,15.5,16.1,16.9,18.2,17,19.5,22.8]
Rainfall=[0,3.6,3.6,39.8,2.8,0,0.2,0,0,16.2]
WindGustDir=[315,67.5,315,315,157.5,135,135,90,180,90]
RISK_MM=[3.6,3.6,39.8,2.8,0,0.2,0,0,16.2,0]
RainTomorrow=[1,1,1,1,0,0,0,0,1,0]
from sklearn import preprocessing
le = preprocessing.LabelEncoder()
MinTemp_encoded = le.fit_transform(MinTemp)
MaxTemp_encoded = le.fit_transform(MaxTemp)
Rainfall_encoded = le.fit_transform(Rainfall)
WindGustDir_encoded = le.fit_transform(WindGustDir)
RISK_MM_encoded = le.fit_transform(RISK_MM)
label = le.fit_transform(RainTomorrow)
features=list(zip(MinTemp_encoded,MaxTemp_encoded,Rainfall_encoded,WindGustDir_encoded,RISK_MM_encoded))
from sklearn.neighbors import KNeighborsClassifier
model = KNeighborsClassifier(n_neighbors=5)
model.fit(features,label)
predicted = model.predict([[0,2]])
print(predicted)
我希望输出是1或0。但当我执行“python readyToTest.py”时,这是来自终端的错误代码
回溯(最近一次呼叫最后一次):
文件“readyToTest.py”,第28行,在
预测=模型。预测([[0,2]])
文件“/usr/lib/python2.7/dist packages/sklearn/neights/classification.py”,第145行,在predict中
neigh_dist,neigh_ind=self.kneighbors(X)
文件“/usr/lib/python2.7/dist packages/sklearn/neighbors/base.py”,第353行,在kneighbors中
n_作业=n_作业,平方=真)
文件“/usr/lib/python2.7/dist packages/sklearn/metrics/pairwise.py”,第1235行,以成对距离表示
返回平行成对(X、Y、func、n个作业,**KWD)
文件“/usr/lib/python2.7/dist-packages/sklearn/metrics/pairwise.py”,第1078行,并行排列
返回函数(X,Y,**kwds)
文件“/usr/lib/python2.7/dist packages/sklearn/metrics/pairwise.py”,第222行,欧几里德距离
十、 Y=检查成对数组(X,Y)
文件“/usr/lib/python2.7/dist packages/sklearn/metrics/pairwise.py”,第122行,在check\u pairwise\u数组中
X形[1],Y形[1]))
ValueError:X和Y矩阵的维度不兼容:X.shape[1]==2,而Y.shape[1]==5
谢谢你的建议 在拟合方法中,您有5个特征,而在预测方法中,您只使用3个特征(第0-2列),您必须对其进行调整,并使用相同数量的特征作为答案!现在就尝试它应该是模型。预测([[8,24,0315,3.6]])在你的拟合方法中,你有5个特征,而在你的预测方法中,你只使用3个特征(第0-2列),你必须调整它并使用相同数量的特征感谢答案!现在就尝试它应该是model.predict([[8,24,0315,3.6]])
Traceback (most recent call last):
File "readyToTest.py", line 28, in <module>
predicted = model.predict([[0,2]])
File "/usr/lib/python2.7/dist-packages/sklearn/neighbors/classification.py", line 145, in predict
neigh_dist, neigh_ind = self.kneighbors(X)
File "/usr/lib/python2.7/dist-packages/sklearn/neighbors/base.py", line 353, in kneighbors
n_jobs=n_jobs, squared=True)
File "/usr/lib/python2.7/dist-packages/sklearn/metrics/pairwise.py", line 1235, in pairwise_distances
return _parallel_pairwise(X, Y, func, n_jobs, **kwds)
File "/usr/lib/python2.7/dist-packages/sklearn/metrics/pairwise.py", line 1078, in _parallel_pairwise
return func(X, Y, **kwds)
File "/usr/lib/python2.7/dist-packages/sklearn/metrics/pairwise.py", line 222, in euclidean_distances
X, Y = check_pairwise_arrays(X, Y)
File "/usr/lib/python2.7/dist-packages/sklearn/metrics/pairwise.py", line 122, in check_pairwise_arrays
X.shape[1], Y.shape[1]))
ValueError: Incompatible dimension for X and Y matrices: X.shape[1] == 2 while Y.shape[1] == 5