我使用Scikit创建了Logistic回归模型,由于某种原因,我无法确定自己无法通过新的向量进行预测。
我正在尝试将Pandas DataFrame传递给预测函数,但出现错误
def generaModeloNevo(job_id):
''' Genera el modelo de un trabajo con base en los modelos existentes'''
trabajoAModelar = session.query(Job).filter(Job.id == job_id).one()
otroTrabajos = session.query(Job).filter(Job.id != job_id).first()
modelo = LogisticRegression()
modelo.coef_ = np.array([otroTrabajos.coeficientes])
modelo.intercept_ = np.array(otroTrabajos.intercept)
modelo.classes_ = [False, True]
vectorCaracteristico = pd.DataFrame([getCharacteristicVector(1, trabajoAModelar.id, trabajoAModelar.id)])
print(vectorCaracteristico)
res = modelo.predict(vectorCaracteristico)
print(res)
Traceback (most recent call last):
File "/Users/diego/tesis/tetsdb.py", line 402, in <module>
generaModeloNevo(39)
File "/Users/diego/tesis/tetsdb.py", line 386, in generaModeloNevo
res = modelo.predict(vectorCaracteristico)
File "/Users/diego/anaconda3/lib/python3.6/site-packages/sklearn/linear_model/base.py", line 329, in predict
return self.classes_[indices]
TypeError: only integer scalar arrays can be converted to a scalar index