Potenzregression < math. Statistik < Stochastik < Hochschule < Mathe < Vorhilfe
|
Status: |
(Frage) beantwortet | Datum: | 14:23 Do 23.07.2009 | Autor: | cgimda |
Bei Wikipedia ist hier beschrieben, wie a und b für eine lineare Regression berechnet wird.
y = a + bx
Wie wird a und b für eine Potenzregression berechnet?
y = [mm] a*x^{b}
[/mm]
|
|
|
|
Status: |
(Antwort) fertig | Datum: | 15:38 Do 23.07.2009 | Autor: | vivo |
Hallo,
schau mal hier:
Link
gruß
|
|
|
|
|
Status: |
(Frage) beantwortet | Datum: | 20:45 Do 23.07.2009 | Autor: | cgimda |
In deinen genannten Link steht, dass manche nichtlineare Probleme sich in lineare überführen lassen.
Also könnte [mm]y = a*x^b[/mm] in [mm]\ln{y} = \ln{a} + b*\ln{x}[/mm] umgewandelt werden?
Und wie wird dann weiter vorgegangen?
Hier ein Zahlenbeispiel:
x y
0,4 300
0,4 280
0,6 350
0,6 400
0,4 250
0,6 420
Bei diesen Beispiel würde bei einer lineraren Regression [mm] a = 50 [/mm] und [mm]b = 567[/mm] ergeben, also [mm]y = 50 + 567x[/mm]
Wie würde die Lösung nun bei diesen Beispiel bei einer Potenzregression lauten?
[mm]y=a*x^b[/mm]
|
|
|
|
|
Status: |
(Antwort) fertig | Datum: | 21:02 Do 23.07.2009 | Autor: | leduart |
Hallo
erst deine Werte in ln umrechnen, also
[mm] z_i=lnx_i
[/mm]
[mm] w_i=lny_i
[/mm]
dann w=a+bz wie vorher.
Gruss leduart
|
|
|
|
|
Status: |
(Frage) beantwortet | Datum: | 21:46 Do 23.07.2009 | Autor: | cgimda |
Danke für deine schnelle Antwort.
Wenn ich die Werte vorher mit ln umrechne, dann kommen folgenden Werte heraus:
z w
-1,42 -327,63
-1,42 -327,70
-1,01 -327,48
-1,01 -327,34
-1,42 -327,81
-1,01 -327,29
Als Ergebnis kommt dann [mm]a = 202[/mm] und [mm]b = 263[/mm] heraus.
Die Gleichung lautet dann [mm]w = 202 + 263z[/mm]
Aber wie würde dann die Gleichung in der Form [mm]y=a*x^b[/mm] lauten?
|
|
|
|
|
Hallo cgimda,
> Danke für deine schnelle Antwort.
>
> Wenn ich die Werte vorher mit ln umrechne, dann kommen
> folgenden Werte heraus:
> z w
> -1,42 -327,63
> -1,42 -327,70
> -1,01 -327,48
> -1,01 -327,34
> -1,42 -327,81
> -1,01 -327,29
>
> Als Ergebnis kommt dann [mm]a = 202[/mm] und [mm]b = 263[/mm] heraus.
> Die Gleichung lautet dann [mm]w = 202 + 263z[/mm]
Wie kommst Du auf diese Werte?
Ich bekomme andere Werte ( [mm]a < 0, \ b > 0[/mm]).
>
> Aber wie würde dann die Gleichung in der Form [mm]y=a*x^b[/mm]
> lauten?
Gruß
MathePower
|
|
|
|
|
Status: |
(Frage) beantwortet | Datum: | 23:11 Do 23.07.2009 | Autor: | cgimda |
ledauart hat gesagt, dass ich meine Werte erst in ln umrechnen soll. Das würde dann so aussehen:
[mm]x_i[/mm] [mm]y_i[/mm] [mm]\ln{x_i} = z_i[/mm] [mm]\ln{y_i} = w_i[/mm]
0,4 300 -0,92 5,70
0,4 280 -0,92 5,63
0,6 350 -0,51 5,86
0,6 400 -0,51 5,99
0,4 250 -0,92 5,52
0,6 420 -0,51 6,04
Danach sollte ich alles normal berechnen:
[mm]z_i[/mm] [mm]w_i[/mm] [mm](z_i-\bar{z})[/mm] [mm](w_i-\bar{w})[/mm] [mm](z_i-\bar{z})(w_i-\bar{w})[/mm] [mm](z_i-\bar{z})^2[/mm]
-0,92 5,70 -1,42 -327,63 464,02 2,01
-0,92 5,63 -1,42 -327,70 464,12 2,01
-0,51 5,86 -1,01 -327,48 331,02 1,02
-0,51 5,99 -1,01 -327,34 330,89 1,02
-0,92 5,52 -1,42 -327,81 464,28 2,01
-0,51 6,04 -1,01 -327,29 330,84 1,02
[mm]\bar{z} = 0,5[/mm]
[mm]\bar{w} = 333,33[/mm]
[mm]SS_{xy} = \frac{1}{n}\summe_{i=1}^{n}(z_i-\bar{z})(w_i-\bar{w}) = 397,53[/mm]
[mm]SS_{xx} = \frac{1}{n}\summe_{i=1}^{n}(z_i-\bar{z})^2 = 1,51[/mm]
[mm]b = \frac{SS_{xy}}{SS_{xx}} = 262,6[/mm]
[mm]a = \bar{w} - b*\bar{z} = 202,03[/mm]
Was hast du für Werte und was ist an meiner Rechnung falsch?
|
|
|
|
|
Status: |
(Antwort) fertig | Datum: | 01:04 Fr 24.07.2009 | Autor: | leduart |
Hallo
deine [mm] z_i [/mm] und [mm] w_i [/mm] sind ok aber wie kommst du denn von Werten zwischen 5 und 6 beim Durchschnitt ploetzlich auff 333 , ebenso bei Werten zw. -0.5 und -0.9 auf nen Mittelwert von +0.5?
Gruss leduart
|
|
|
|
|
Status: |
(Frage) beantwortet | Datum: | 11:57 Fr 24.07.2009 | Autor: | cgimda |
Danke für die schnellen Antworten. Ich habe meinen Fehler gefunden. Ich habe die Mittelwerte aus Versehen von x und y berechnet.
Ich glaube jetzt habe ich es hinbekommen. Hier noch mal die komplette Rechnung:
[mm]y = a * x ^b[/mm]
[mm]\ln{y} = \ln{a} + b * \ln{x}[/mm]
[mm]x^\* = \ln{x}[/mm]
[mm]y^\* = \ln{y}[/mm]
[mm]a^\* = \ln{a}[/mm]
[mm]y^\* = a^\* + b * x^\*[/mm]
[mm]x_i[/mm] [mm]y_i[/mm] [mm]x^\*_i = \ln{x_i}[/mm] [mm]y^\*_i = \ln{y_i}[/mm]
0,4 300 -0,92 5,70
0,4 280 -0,92 5,63
0,6 350 -0,51 5,86
0,6 400 -0,51 5,99
0,4 250 -0,92 5,52
0,6 420 -0,51 6,04
[mm]x^\*_i[/mm] [mm]y^\*_i[/mm] [mm](x^\*_i-\bar{x^\*})[/mm] [mm](y^\*_i-\bar{y^\*})[/mm] [mm](x^\*_i-\bar{x^\*})(y^\*_i-\bar{y^\*})[/mm] [mm](x^\*_i-\bar{x^\*})^2[/mm]
-0,92 5,70 -1,42 -327,63 464,02 2,01
-0,92 5,63 -1,42 -327,70 464,12 2,01
-0,51 5,86 -1,01 -327,48 331,02 1,02
-0,51 5,99 -1,01 -327,34 330,89 1,02
-0,92 5,52 -1,42 -327,81 464,28 2,01
-0,51 6,04 -1,01 -327,29 330,84 1,02
[mm]\bar{x^\*} = -0,71[/mm]
[mm]\bar{y^\*} = 5,79[/mm]
[mm]SS_{x^\*y^\*} = \frac{1}{n}\summe_{i=1}^{n}(x^\*_i-\bar{x^\*})(y^\*_i-\bar{y^\*}) = 0,03[/mm]
[mm]SS_{x^\*x^\*} = \frac{1}{n}\summe_{i=1}^{n}(x^\*_i-\bar{x^\*})^2 = 0,04[/mm]
[mm]b = \frac{SS_{x^\*y^\*}}{SS_{x^\*x^\*}} = 0,85[/mm]
[mm]a^\* = \bar{y^\*} - b*\bar{x^\*} = 6,40[/mm]
[mm]a =e^{a^\*} = 599,21[/mm]
Damit lautet die endgültige Gleichung für dieses Beispiel: [mm]y = 599,21 * x^{0,85}[/mm]
Wäre das alles jetzt so richtig?
|
|
|
|
|
Status: |
(Antwort) fertig | Datum: | 15:02 Fr 24.07.2009 | Autor: | leduart |
Hallo
Machs etwas langsamer!
1. 1. Zeile $ [mm] \bar{x^*} [/mm] = -0,71$
[mm] $\bar{x^*}-x_1^*=-0.71-(-0.92)=+0.21$ [/mm] und nicht deine -1.42
(Wenn die Abweichungen viel groesser als die Messwerte sind kann man auch keine Regression mehr machen.)
2.$ [mm] \bar{y^*} [/mm] = 5,79 $
wieder 1. Zeile $ [mm] \bar{y^*} [/mm] - [mm] y_1^*=5.79-5.70=0.09$
[/mm]
Was du da rechnest ist doch sehr eigenartig. Vorallem stoert mich dass du deine Ergebnisse nich ein bissel kritisch ansiehst.
Deine y^* Differenzen liegen soweit jenseits alles glaubbaren, dass du das doch sehen muesstest.
Ein Mittelwert liegt doch zwischen den gemessenen Werten, wie koennen da abweichungen vorkommen, die groesser als der MW sind? Wenn nicht die Messwerte links und rechts von 0 liegen.
Versuch nicht einfach "rumzuformeln" sondern den Vorgang , der hinter den formeln steckt grob zu verstehen.
Gruss leduart
|
|
|
|
|
Status: |
(Frage) beantwortet | Datum: | 21:08 Fr 24.07.2009 | Autor: | cgimda |
Hallo leduart, danke für deine Antwort. Du hast natürlich Recht, dass ab der dritten Spalte der Tabelle die Werte total falsch sind. Ich hatte für die letzte Nachricht einfach den Quelltext der vorhergehenden Nachricht kopiert. Die Berechnungen habe ich dann in Excel durchgeführt und habe dann vergessen die neue Tabelle in die Nachricht zu kopieren. Dadurch standen noch die alten Werte in der Tabelle. Die Endergebnisse müssten aber trotzdem alle gestimmt haben, denn die hatte ich alle aktualisiert.
Ich habe also nicht einfach nur "rumgeformelt", sondern nur vergessen alle Daten hier zu aktualisieren. Ich hoffe du verstehst mich.
Ich habe nun noch mal die gesamte Aufgabe hier rein kopiert, wo hoffentlich nun alle Zahlen stimmen (Alle Zwischenergebnisse sind gerundet, gerechnet wurde aber immer mit den vollständigen Zwischenergebnissen):
[mm]y = a * x ^b[/mm]
[mm]\ln{y} = \ln{a} + b * \ln{x}[/mm]
[mm]x^\* = \ln{x}[/mm]
[mm]y^\* = \ln{y}[/mm]
[mm]a^\* = \ln{a}[/mm]
[mm]y^\* = a^\* + b * x^\*[/mm]
[mm]x_i[/mm] [mm]y_i[/mm] [mm]x^\*_i = \ln{x_i}[/mm] [mm]y^\*_i = \ln{y_i}[/mm]
0,4 300 -0,92 5,70
0,4 280 -0,92 5,63
0,6 350 -0,51 5,86
0,6 400 -0,51 5,99
0,4 250 -0,92 5,52
0,6 420 -0,51 6,04
[mm]x^\*_i[/mm] [mm]y^\*_i[/mm] [mm](x^\*_i-\bar{x^\*})[/mm] [mm](y^\*_i-\bar{y^\*})[/mm] [mm](x^\*_i-\bar{x^\*})(y^\*_i-\bar{y^\*})[/mm] [mm](x^\*_i-\bar{x^\*})^2[/mm]
-0,92 5,70 -0,20 -0,09 0,02 0,04
-0,92 5,63 -0,20 -0,16 0,03 0,04
-0,51 5,86 0,20 0,07 0,01 0,04
-0,51 5,99 0,20 0,20 0,04 0,04
-0,92 5,52 -0,20 -0,27 0,05 0,04
-0,51 6,04 0,20 0,25 0,05 0,04
[mm]\bar{x^\*} = -0,71[/mm]
[mm]\bar{y^\*} = 5,79[/mm]
[mm]SS_{x^\*y^\*} = \frac{1}{n}\summe_{i=1}^{n}(x^\*_i-\bar{x^\*})(y^\*_i-\bar{y^\*}) = 0,03[/mm]
[mm]SS_{x^\*x^\*} = \frac{1}{n}\summe_{i=1}^{n}(x^\*_i-\bar{x^\*})^2 = 0,04[/mm]
[mm]b = \frac{SS_{x^\*y^\*}}{SS_{x^\*x^\*}} = 0,85[/mm]
[mm]a^\* = \bar{y^\*} - b*\bar{x^\*} = 6,40[/mm]
[mm]a =e^{a^\*} = 599,21[/mm]
Damit lautet die endgültige Gleichung für dieses Beispiel: [mm]y = 599,21 * x^{0,85}[/mm]
Wäre das jetzt so richtig?
|
|
|
|
|
Status: |
(Antwort) fertig | Datum: | 21:46 Fr 24.07.2009 | Autor: | leduart |
Hallo
ich will das nicht alles ausrechnen, die Groessenordnung stimmt.
Kritik an der ganzen Sache: Wenn das ne echte messung ist, bei der du nur 2 verschiedene x hast ist das ergebnis nicht sinnvoller, als wenn du die y werte fuer das eine x gemittelt haettest, ebenso fuer das andere, daraus 2 Punkte der Kurve bestimmt. sinnvoll ist ne lineare regression nicht fuer 2 Messpunkte. Die Genauigkeit, die dein 599,21 vorspiegelt ist weit uebertrieben. 600 waere vielleicht noch angemessen.
wenns um groesser Datenmengen geht und du eh exel verwendest, sollte man, um grobe Fehler zu vermeiden, die messwerte und die Kurve am Ende auftragen und vergleichen.
gruss leduart
|
|
|
|
|
Status: |
(Mitteilung) Reaktion unnötig | Datum: | 22:11 Fr 24.07.2009 | Autor: | cgimda |
Hallo leduart,
danke noch mal, dass du mir geholfen hast das ganze zu verstehen.
Noch mal zur Aufklärung: Bei dem Zahlenbeispiel handelt es sich nicht um echte Messwerte, sondern nur um ein Beispiel mit einfachen und wenigen Zahlen. Das ganze hat einfach nur dazu gedient, damit ich verstehe, wie man von einer Potenzregression im "Kopf" a und b berechnet, denn ich wusste überhaupt nicht, wie man an dieses Problem herangeht und dass man eine nichtlineare in eine lineare Regression überführen kann. Excel habe ich nur zur Hilfe genommen, damit ich nicht jedes Mal alle Zahlen neu berechnen muss. Hat also alles kein praktischen Nutzen, sondern um zum Verständnis des Grundprinzips gedient.
gruß cgimda
|
|
|
|