Je dois répondre à RandomForestRegressorpartir sklearn.ensemble.
forest = ensemble.RandomForestRegressor(**RF_tuned_parameters)
model = forest.fit(train_fold, train_y)
yhat = model.predict(test_fold)
Ce code a toujours fonctionné jusqu'à ce que je fasse un prétraitement des données ( train_y). Le message d'erreur dit:
DataConversionWarning: Un vecteur de colonne y a été transmis lorsqu'un tableau 1d était attendu. Veuillez changer la forme de y en (n_samples,), par exemple en utilisant ravel ().
model = forest.fit (train_fold, train_y)
Auparavant, train_yc'était une série, maintenant c'est un tableau numpy (c'est un vecteur de colonne). Si je postule train_y.ravel(), alors cela devient un vecteur de ligne et aucun message d'erreur n'apparaît, car l'étape de prédiction prend très longtemps (en fait, elle ne se termine jamais ...).
Dans la documentation de RandomForestRegressorj'ai trouvé que cela train_ydevrait être défini comme y : array-like, shape = [n_samples] or [n_samples, n_outputs]
une idée comment résoudre ce problème?
train_ydonnées pour vous assurer que le prétraitement ne les a pas corrompues?
RF_tuned_parameterspour nous s'il vous plaît.
train_fold.shapeettrain_y.shape?