Einbau einer Kurve auf bestimmte Daten
Ich habe folgende Daten in meiner Diplomarbeit:
28 45
91 14
102 11
393 5
4492 1.77
Muss ich passen, eine Kurve in diese. Wenn ich plot, dann ist es das was ich bekomme.
Ich denke, eine Art exponentielle Kurve passen sollten diese Daten. Ich bin mit GNUplot. Kann mir jemand sagen welche Art von Kurve passt und was erste Parameter, den ich verwenden kann?
Ich würde vorschlagen, beginnend von der Darstellung der Daten auf einer log-Skala mindestens für die y-Achse und vielleicht die x-Achse zu. Das sollte stellen Sie Ihre Daten viel näher an einer geraden Linie. Wenn eine gerade Linie im log-Skalen ist eine angemessene Passform, das würde es einfacher machen, zu interpretieren Unsicherheiten in Parametern, etc als fitting-Kurven.
InformationsquelleAutor The Flying Dutchman | 2013-01-07
Du musst angemeldet sein, um einen Kommentar abzugeben.
Nur für den Fall R ist eine option, hier ist eine Skizze von zwei Methoden, die Sie verwenden können.
Erste Methode: Bewertung der Anpassungsgüte einer Menge von kandidatenmodellen
Dies ist wahrscheinlich die beste Weise, wie man es nutzt, was Sie vielleicht schon wissen oder erwarten, dass über die Beziehung zwischen den Variablen.
Die orange Kurve sieht sehr gut aus. Mal sehen, wie es Ränge, wenn wir Messen die relative Anpassungsgüte dieser Modelle sind...
Zweite Methode: Nutzung genetischer Programmierung zu suchen, eine große Menge von Modellen
Dieser scheint eine Art von wild shot in the dark Ansatz curve-fitting. Sie müssen nicht angeben, viel am start, aber vielleicht mache ich es falsch...
Eigentlich eine sehr schlechte visuelle fit. Vielleicht gibt es ein bisschen mehr Aufwand erforderlich, um die Qualität der Ergebnisse von der genetischen Programmierung...
Credits: Kurvenanpassung Antwort 1, Kurvenanpassung Antwort 2 von G. Grothendieck.
poly(1/x,3)
als Kandidat Modell ???Vereinbart, dies ist alles ein bisschen unklug geben, die kleine Menge Daten, aber es war ein nützliches lernen übung für mich. Für die
poly
, gut, genau, genau, eine Vermutung. Lesen, ein bisschen mehr über Sie (Ihr Buch war hilfreich), ich sehe ein Polynom Dritter Ordnung für so wenige Freiheitsgrade, ist unbrauchbar für die meisten Zwecke (wenn es bringt eine schöne Linie durch die Punkte!). Ich habe ersetzt es mit ein paar weniger bizarre Bewerber, vielen Dank für Ihren Kommentar.was ist die groß -
I()
Sie mit in die Anprobe-Modelle? z.B.lm(y~I(1/x), data=dat)
help(I)
sollte Sie verstehen. Noch ist hier also die Werte enthält, die1/x
als x ist.InformationsquelleAutor Ben
Kennen Sie irgendeine analytische Funktion, die die Daten einhalten sollten? Wenn ja, könnte es helfen, wählen Sie die form der Funktion, passen zu den Daten.
Sonst, da die Daten Aussehen exponentiellen Zerfall, probieren Sie etwas wie dies in gnuplot, wo eine Funktion mit zwei freien Parametern ausgestattet ist, zu den Daten:
Gnuplot variieren die Parameter benannt nach der " via " - Klausel für die beste Passform. Statistiken werden gedruckt, um die Standardausgabe als auch eine Datei mit dem Namen " fit.log' im aktuellen Verzeichnis.
Die c-variable bestimmt die Krümmung (decay), während die b-variable wird so skaliert, dass alle Werte Linear zu bekommen, die richtige Größe der Daten.
Weitere Infos finden Sie in der Kurve passen Abschnitt in der Gnuplot-Dokumentation.
InformationsquelleAutor Anders Damsgaard