Mathematica - Regressionsgerad < Mathematica < Mathe-Software < Mathe < Vorhilfe
|
Status: |
(Frage) beantwortet | Datum: | 11:48 Mi 27.04.2005 | Autor: | Vicy |
hallo
wie bereits in einem anderen post geschrieben, habe ich ein projekt in mathe bekommen, das ich mit mathematica lösen soll. ich habe keinerlei vorkenntnisse und habe auch sonst wenig ahnung vom thema...das gleich mal vorweg!
in der aufgabe geht es darum, eine punktwole grafisch darzustellen...und wow, das habe ich sogar geschafft...nun muss ich aber die ausgleichsgerade, die die summe der fehlerquadrate minimiert finden.
ich schreib euch mal die aufgabe hier rein:
Der Konsumentenschutz hat folgendes Problem. Er will die durchschnittliche Preissteigerung in Prozent pro Quartal eines bestimmten Produktes seit der Einführung des (T)Euros wissen. Vor dem Wechsel der Währung betrug der Preis 7, 08e. Zur Berechnung stehen ihm die Preise jeweils zu Beginn des Quartals und das Wissen, dass die Preissteigerung annähernd linear verlief, zur Verfügung.
Jahr Quartal Preis in e
2002 1 7,08
2 7,68
3 7,44
4 7,74
2003 1 7,75
2 8,09
3 8,21
4 8,50
2004 1 8,63
2 8,76
3 9,08
4 9,29
Gesucht ist nun die Gerade, die den Verlauf der Punktwolke am besten approximiert. Bestimmen Sie daher die Ausgleichsgerade
f(x) = k · x + d,
die die Summe der Fehlerquadrate minimiert. Das Fehlerquadrat ei ist definiert als das Quadrat der Abweichung zwischen Funktionswert f(xi) der Ausgleichsgeraden und dem Referenzwert yi, d.h.
ei = (f(xi) − yi)2 = (k · xi + d − yi)2
Die Steigung ergibt sich dann aus
[mm] A(k)=\summe_{i=1}^{n} [/mm] ei -> min
Helfen Sie nun dem Konsumentenschutz bei seiner Arbeit und berechnen Sie die mittlere Preissteigerung in Prozent mit Hilfe der Ausgleichsgeraden. Zeichnen Sie zusätzlich die Punktemenge und die Ausgleichsgerade in einem gemeinsamen Graphen um ihre Rechnung zu illustrieren. Welche Probleme treten hierbei auf? Interpretieren Sie das Ergebnis!
so mein erster versuch mit mathematica (und einem alten, ähnlichen projekt des vorjahres) schaut so aus:
f(x) = kx + d
f(0) = d = 7.08 = > f(x) = kx + 7.08
f[x_] = kx + 7.08
7.08 + kx
fehlerquadrat := (7.08 + k*punktwolke[x][1] - [mm] punktwolke[x][2])^2
[/mm]
A[k_] = Sum[fehlerquadrat, {x, 1, 12}]
soweit hab ichs ungefähr von dem alten projekt übernommen/geändert...aber jetzt komm ich nicht weiter, da in der letzten formel wohl ein fehler sein muss (die eckigen klammern sind doppelklammer, hat das forum nur seltsam dargestellt)
sorry für den langen beitrag, aber vielleicht hilft mir ja doch jemand weiter? wäre nett :)
lg
Vicy
Ich habe diese Frage in keinem Forum auf anderen Internetseiten gestellt.
|
|
|
|
Status: |
(Frage) beantwortet | Datum: | 12:43 Mi 27.04.2005 | Autor: | ich00 |
ich habe es genauso wie du von dem alten projekt gemacht. jedoch wo meinst du ist da ein fehler? also bei mir funktioniert diese formel schon!
fehlerquadrat := (7.08 + k*Punktemenge[[x]][[1]] - Punkemenge[[x]][[2]])^2
bloß ob das auch richtig ist weiß ich auch nicht, drum wäre ich auch froh, wenn uns jemand weiterhelfen könnte!!
lg, Susi
|
|
|
|
|
Status: |
(Antwort) fertig | Datum: | 14:48 Mi 27.04.2005 | Autor: | Vicy |
bei mir funktioniert das nicht...kommt folgender fehler:
Part specification punktmenge1 is longer than depth of object
kannst du mir vielleicht deine .nb datei schicken, damit ich sehe was ich da falsch gemacht habe? (Vicy_@gmx.de)
lg
Vicy
|
|
|
|
|
Status: |
(Mitteilung) Reaktion unnötig | Datum: | 18:38 Mi 27.04.2005 | Autor: | Vicy |
hallo nochmal
hab jetzt auch eine lösung, hab wohl irgendwie die befehle falsch zugewiesen...kommt bei dir auch k=0.173646 raus?
jetzt noch eine frage...wie berechne ich nun die mittlere preissteigerung anhand der regressionsgerade? wie man das höndisch macht weiss ich, nur wie gehts mit mathematica?
lg und danke :)
|
|
|
|
|
Status: |
(Antwort) fertig | Datum: | 19:39 Mi 27.04.2005 | Autor: | Max |
Hallo,
darfst du nicht die eingebaute Fit-Funktion von Mathematica nutzen für die Regressionsgerade? Außerdem finde ich, dass wenn man von einer gleichen prozenualen Zunahme ausgeht müsste man doch ein exponentielles Wachstum bekommen - d.h. die Logarithmen der Preise liegen auf einer Geraden.
Max
|
|
|
|
|
Status: |
(Frage) beantwortet | Datum: | 20:12 Mi 27.04.2005 | Autor: | Vicy |
danke max für deine antwort, aber ich bin ehrlich, ich hab keinen blassen schimmer was du meinst, da ich mich weder mit dem programm auskenne noch viel ahnung in mathe habe. brauche nur hilfe wie man das jetzt löst (für absolute newbies beschrieben *g*)
habe jetzt also die regressionsgerade
f(x)= 0.173646*x + 7.08
ausgerechnet, und muss daraus die mittlere preissteigerung (werte stehen in meinem ersten post) berechnen.
sorry, für die umstände, aber ich bin wirklich verzweifelt
thx :)
|
|
|
|
|
Status: |
(Antwort) fertig | Datum: | 20:55 Mi 27.04.2005 | Autor: | ich00 |
damit du die regressionsgerade zeichnen kannst musst du die formel f[x_]=kx+d hernehmen, d weißt du, das ist der STartpreis. k musst du dir ausrechnen
Für k musst du dir zuerst die Fehlerquadrate ausrechnen und summieren
die Formel dazu ist
[mm] \summe_{i=1}^{n}(f[xi]-yi)^2 [/mm] --> min
[mm] \summe_{i=1}^{n}(f[xi]-yi)^2 [/mm] =A[k]
A'[k]=0
in Mathematica dann Sum[[k*xi+d-yi],{i,2,12}]
und dann A differenzieren
k= Veränd. y / Veränd. x
Ich hoffe ich hab das jetzt so richtig aufgeschrieben, so hat es der tutor im tutorium erklärt.
lg, Susi
|
|
|
|
|
Status: |
(Frage) beantwortet | Datum: | 21:27 Mi 27.04.2005 | Autor: | Vicy |
hallo susi,
danke für deine antwort..soweit hab ich das eh schon, hab als regressionsgerade jetzt
f(x)=0.173646x+7.08
raus. Nur wie ist das jetzt mit der prozentualen mittleren Preissteigerung? woher bekomm ich die?
|
|
|
|
|
Status: |
(Antwort) fertig | Datum: | 21:54 Mi 27.04.2005 | Autor: | ich00 |
da bin ich jetzt auch noch am herumprobieren, aber jetzt auf einmal bekomme ich bei den lösungen {{}} raus, da stimmt doch was nicht. kannst du mir vielleicht deines mal schicken, ob i da irgendwas vergessn hab?
lg, Susi
|
|
|
|
|
Status: |
(Mitteilung) Reaktion unnötig | Datum: | 21:59 Mi 27.04.2005 | Autor: | Vicy |
ja kann ich dir schicken, email adresse?
meine ist Vicy_@gmx.de falls du mir deins auch schicken kannst
lg
Verena
|
|
|
|