Hallöchen,
ich hab mal eine Verständnisfrage zur linearen Regression.
Ich habe eine Zeitreihe und möchte dort eine Regressionsgerade durchlegen. Dies mache ich mit dem Befehl scipy.stats.linregress um auch Werte für p, r zu erhalten.
Gleichzeitig habe ich meine Daten auch in Excel eingeladen und dort die Regressionsgerade bestimmt um einen Anhaltspunkt zu erhalten.
Leider stimmen die beiden Regressionsgeraden nicht überein. Der Schnittpunkt mit der y-Achse ist immer unterschiedlich. Der Wert, der in Excel berechnet wurde scheint mir plausibler, wenn man die Daten plottet. Woran kann das liegen? Wie errechnet Python den Schnittpunkt?
Regressionsgerade in Excel: y=7,47x+550.32
Regressionsgerade in Python: y=7,47x-14026
Excel:
Python:
Ich hab mich dabei an diesem Beispiel orientiert:
http://www.holzbau-blog.org/nichtlinear ... in-python/
Ich hab das Internet schon durchgeforstet aber nichts gefunden. Auch mit polyfit komme ich auf den gleichen Schnittpunkt mit der y Achse ...
Vielen Dank für eure Hilfe.
Liebe Grüße
lineare Regression
Eigentlich ist doch die Pythonvariante plausibler - der Schnittpunkt mit y liegt bei x=0, wenn Du die Gerade bis dort verlängerst, sollte y tief negativ sein. Was Excel da rechnet - kA, wahrscheinlich ist in Excel das x so autonormiert, dass der erste Wert 0 oder 1 entspricht.
Hallo chulia,
die beiden Lösungen unterscheiden sich darin, dass Excel den Nullpunkt beim Jahr 1950 hat, während bei der Lösung mit Python den Nullpunkt im Jahre 0 hat. Ich nehme mal an dass du Excel nicht die Jahreszahlen, sondern die Zeilen- oder Spaltennumbern als x-Vektor geben hast.
Beste Grüße
Gerrit
PS: Ich denke nicht, dass bei der Zeitreihe eine linerare Regression angebracht ist, weil die Schwanken sehr groß sind. Nur als Randbemerkung!
die beiden Lösungen unterscheiden sich darin, dass Excel den Nullpunkt beim Jahr 1950 hat, während bei der Lösung mit Python den Nullpunkt im Jahre 0 hat. Ich nehme mal an dass du Excel nicht die Jahreszahlen, sondern die Zeilen- oder Spaltennumbern als x-Vektor geben hast.
Beste Grüße
Gerrit
PS: Ich denke nicht, dass bei der Zeitreihe eine linerare Regression angebracht ist, weil die Schwanken sehr groß sind. Nur als Randbemerkung!
Vielen Dank jerch und gkuhl.
Stimmt mit der x Achsen Skallierung hätte ich auch drauf kommen können
Vielen Dank für den Denkanstupser ^^
@ gkuhl: Ja, das war jetzt nur eins von vielen Beispielen. Das Bestimmtheitsmaß sagt ja schon aus, dass das Blödsinn ist. Ich hoffe nur, dass es bei anderen Daten besser aussieht ^^
Stimmt mit der x Achsen Skallierung hätte ich auch drauf kommen können
Vielen Dank für den Denkanstupser ^^
@ gkuhl: Ja, das war jetzt nur eins von vielen Beispielen. Das Bestimmtheitsmaß sagt ja schon aus, dass das Blödsinn ist. Ich hoffe nur, dass es bei anderen Daten besser aussieht ^^