Seite 1 von 1
Frage zu polyfit
Verfasst: Freitag 19. September 2008, 09:13
von fk08
Hallo,
mit polyfit kann man seine daten mit einem polynom n-ten grades anfitten. das klappt auch sehr gut. nun möchte ich aber meine daten z.b nur mit der dritten ordnung fitten. wie geht das mit polyfit? in der funktion polyfit gibt man an: polyfit(x_data,y_data,N), wobei N den grad des polynoms darstellt.
danke und grüße
Verfasst: Freitag 19. September 2008, 13:19
von numerix
Was meinst du mit "dritter Ordnung"? Ist bei mir schon was länger her (mag sein, dass ich im Laufe der Jahre was vergessen habe ...), aber ich verstehe darunter den Grad des Polynoms und wie man den angibt, beschreibst du ja selbst.
Vielleicht kannst du nochmal klarer darstellen, was funktioniert und was du gerne hättest, was aber nicht funktioniert.
Verfasst: Freitag 19. September 2008, 15:18
von CM
siehe auch docstring der Funktion.
HTH
Christian
edit: PS Bei Funktionen, die nicht aus Standardmodulen stammen, solltest Du angeben, aus welchem Paket sie kommen - hier kann es ja nur scipy und mpl sein und da sind die Funktionen identisch, aber so etwas kann auch zu Verwirrung führen.
PPS @numerix: 3. Ordnung eines Polynoms? siehe auch
http://de.wikipedia.org/wiki/Polynom
Verfasst: Freitag 19. September 2008, 15:24
von numerix
@CM: So habe ich das auch verstanden, aber wo ist dann das Problem?
fk08 beschreibt die Lösung doch selbst in seinem Post

Verfasst: Freitag 19. September 2008, 15:27
von CM
numerix hat geschrieben:@CM: So habe ich das auch verstanden, aber wo ist dann das Problem?
fk08 beschreibt die Lösung doch selbst in seinem Post

Stimmt - deswegen war ich ja vor dem edit so kurz. Sorry, wenn der Link jetzt Eulen nach Athen tragen war.
Verfasst: Freitag 19. September 2008, 15:44
von numerix
Also jetzt hast du mich völlig verwirrt:
Gestolpert bin ich über die Bezeichnung "dritter Ordnung" im OP. Nach meinem Kenntnisstand haben Polynome einen Grad, aber keine Ordnung (im Wikipedia-Artikel haben Polynome auch keine Ordnung). Ich konnte es nur so deuten, dass "Ordnung" und "Grad" hier synonym verwendet werden, weil sich mir nicht erschließen wollte (und immer noch nicht will), um was für eine "Ordnung" es sich handeln soll, wenn damit NICHT der Grad des Polynoms gemeint sein sollte.
Auch wenn es kein pythonisches Problem ist, wäre nett, wenn du meiner Verwirrung abhelfen könntest.
Verfasst: Freitag 19. September 2008, 16:54
von CM
Oh, da habe ich noch gar nicht drüber nachgedacht, aber ja: Ordnung == Grad. Tut mir leid, ich hänge mit einem Blick über meine Arbeit und gucke ins Forum, wenn meine Software wieder streikt. Sollte man nicht machen ...
Verfasst: Freitag 19. September 2008, 16:55
von numerix
Danke, jetzt ist meine kleine Welt wieder in Ordnung.

Verfasst: Dienstag 23. September 2008, 09:24
von fk08
Hallo,
dankeschon mal für eure antworten.
1. mit ordnung meine ich grad, sicherlich ist grad der bessere ausdruck
2. mit
werden die daten mit einem polynom gefittet: der form a_0+a_1*x+a_2*x^2
ich möchte aber z.b meine daten nur mit a*x^2 fitten also nur mit dem 3. grad und nicht zusätzlich mit grad 1 und 2.
danke
Verfasst: Dienstag 23. September 2008, 12:23
von CM
Oh, ja das hat wohl niemand aus der Anfrage gelesen. Also da geht scipy.optimize.leastsq. Eine Beispielanwendung findest Du im
Cookbook, etwas besser in den
online Beispielen und es gibt noch einige weitere Beispiele in den PDFs der Doku. Ggf. geht auch eine andere optimize-Routine.
HTH
Christian
Verfasst: Dienstag 23. September 2008, 14:31
von numerix
fk08 hat geschrieben:werden die daten mit einem polynom gefittet: der form a_0+a_1*x+a_2*x^2
ich möchte aber z.b meine daten nur mit a*x^2 fitten also nur mit dem 3. grad und nicht zusätzlich mit grad 1 und 2.
In deinem Beispiel ist es ein Polynom 2. Grades - der Exponent der höchsten Potenz von x gibt den Grad an.
Was du meinst ist ein Polynom 2. Grades, bei dem alle weiteren Koeffizienten Null sind.
Verfasst: Dienstag 23. September 2008, 15:50
von fk08
ja, stimmt....
danke für die Hilfe, werde mir die Cookbook Sachen anschauen.