J'essaie juste de faire une simple régression linéaire mais je suis déconcerté par cette erreur pour:
regr = LinearRegression()
regr.fit(df2.iloc[1:1000, 5].values, df2.iloc[1:1000, 2].values)
qui produit:
ValueError: Found arrays with inconsistent numbers of samples: [ 1 999]
Ces sélections doivent avoir les mêmes dimensions, et elles doivent être des tableaux numpy, alors que me manque-t-il?
scikit-learn
ensoleillé
la source
la source
On dirait que vous utilisez pandas dataframe (du nom df2).
Vous pouvez également effectuer les opérations suivantes:
REMARQUE: j'ai supprimé les "valeurs" car cela convertit la série pandas en numpy.ndarray et numpy.ndarray n'a pas d'attribut to_frame ().
la source
Vu sur le cours de base Udacity Deep Learning:
la source
Je pense que l'argument "X" de regr.fit doit être une matrice, donc ce qui suit devrait fonctionner.
la source
J'ai rencontré cette erreur car j'ai converti mes données en fichier
np.array
. J'ai résolu le problème en convertissant mes données en un à lanp.matrix
place et en prenant la transposition.ValueError:
regr.fit(np.array(x_list), np.array(y_list))
Correct:
regr.fit(np.transpose(np.matrix(x_list)), np.transpose(np.matrix(y_list)))
la source
Essayez de mettre vos fonctionnalités dans un tuple comme celui-ci:
la source
J'ai fait face à un problème similaire. Le problème dans mon cas était que le nombre de lignes dans X n'était pas égal au nombre de lignes dans y.
c'est-à-dire que le nombre d'entrées dans les colonnes de caractéristiques n'était pas égal au nombre d'entrées dans la variable cible puisque j'avais supprimé certaines lignes des colonnes de freature.
la source
Pour analyser deux tableaux (array1 et array2), ils doivent répondre aux deux exigences suivantes:
1) Ils doivent être un numpy.ndarray
Vérifier avec
Si ce n'est pas le cas, au moins l'un d'entre eux effectue
2) Les dimensions doivent être les suivantes:
N est le nombre d'éléments qui se trouvent dans le tableau. Pour fournir à array1 le bon nombre d'axes, procédez comme suit:
la source
Comme il a été mentionné ci-dessus, l'argument X doit être une matrice ou un tableau numpy avec des dimensions connues. Vous pourriez donc probablement utiliser ceci:
Ainsi, votre dataframe serait converti en un tableau avec des dimensions connues et vous n'aurez pas besoin de le remodeler
la source
Certains jours, j'ai été confronté au même problème. La raison était des tableaux de tailles différentes.
la source
pendant la période d'essai du train, vous avez peut-être fait une erreur
Le code ci-dessus est correct
Vous avez peut-être fait comme ci-dessous ce qui est faux
la source