Ich versuche nur, eine einfache lineare Regression durchzuführen, aber ich bin verblüfft über diesen Fehler für:
regr = LinearRegression()
regr.fit(df2.iloc[1:1000, 5].values, df2.iloc[1:1000, 2].values)
welches produziert:
ValueError: Found arrays with inconsistent numbers of samples: [ 1 999]
Diese Auswahlen müssen die gleichen Abmessungen haben und sollten numpy Arrays sein. Was fehlt mir also?
scikit-learn
sonnig
quelle
quelle
Sieht so aus, als würden Sie einen Pandas-Datenrahmen verwenden (ab dem Namen df2).
Sie können auch Folgendes tun:
HINWEIS: Ich habe "Werte" entfernt, da dadurch die Pandas-Serie in numpy.ndarray konvertiert wird und numpy.ndarray kein Attribut to_frame () hat.
quelle
Gesehen auf dem Udacity Deep Learning-Grundkurs:
quelle
Ich denke, das "X" -Argument von Regr.fit muss eine Matrix sein, daher sollte das Folgende funktionieren.
quelle
Ich bin auf diesen Fehler gestoßen, weil ich meine Daten in eine konvertiert habe
np.array
. Ich habe das Problem behoben, indem ich meine Daten in eine konvertiertnp.matrix
und stattdessen die Transponierung vorgenommen habe.ValueError:
regr.fit(np.array(x_list), np.array(y_list))
Richtig:
regr.fit(np.transpose(np.matrix(x_list)), np.transpose(np.matrix(y_list)))
quelle
Versuchen Sie, Ihre Funktionen in einem Tupel wie folgt zu platzieren:
quelle
Ich hatte ein ähnliches Problem. Das Problem in meinem Fall war, dass die Anzahl der Zeilen in X nicht gleich der Anzahl der Zeilen in y war.
Das heißt, die Anzahl der Einträge in Feature-Spalten war nicht gleich der Anzahl der Einträge in der Zielvariablen, da ich einige Zeilen aus Feature-Spalten entfernt hatte.
quelle
Um zwei Arrays (Array1 und Array2) zu analysieren, müssen sie die folgenden zwei Anforderungen erfüllen:
1) Sie müssen numpy.ndarray sein
Überprüfen Sie mit
Ist dies nicht der Fall, führen Sie mindestens einen von ihnen durch
2) Die Abmessungen müssen wie folgt sein:
N ist die Anzahl der Elemente im Array. Um Array1 mit der richtigen Anzahl von Achsen zu versehen, führen Sie folgende Schritte aus:
quelle
Wie oben erwähnt, muss das X-Argument eine Matrix oder ein Numpy-Array mit bekannten Dimensionen sein. Sie könnten also wahrscheinlich Folgendes verwenden:
Ihr Datenrahmen wird also in ein Array mit bekannten Abmessungen konvertiert, und Sie müssen ihn nicht neu formen
quelle
Während der Aufteilung des Zugtests haben Sie möglicherweise einen Fehler gemacht
Der obige Code ist korrekt
Sie haben vielleicht wie folgt vorgegangen, was falsch ist
quelle