|
|
exponentielle Regression mit mehreren Variablen |
|
Wedge23 |
Forum-Newbie
|
|
Beiträge: 4
|
|
|
|
Anmeldedatum: 23.05.12
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 23.05.2012, 14:48
Titel: exponentielle Regression mit mehreren Variablen
|
|
hallo,
ich beschäftige mich erst seit kurzem mit matlab und hab gerade ein mittleres bis großes Problem an dem ich Verzweifele.
Ich will eine exponentielle Regression erstellen der Form:
y = B1 * (x/z)^B2
y und x sind Messwerte ( Spaltenvektoren ), z ist mehr oder weniger eine funkton die von x abhängt, und die mir auch als Spaltenvektoren vorliegen. Also im endeffekt will ich ein x-y Diagramm haben.
ich hab hier im forum diverse codes gefunden wie man exponentielle regressionen einfach erstellen kann
z.B:
allerdings bekomm ich da meine abhängigkeit von z nicht mit rein.
Weis irgendwer wie ich das in den code, oder auch in nen total anderen code (solang er nur geht) reinbekomme?
Wedge
|
|
|
|
|
MaFam |
Forum-Meister
|
|
Beiträge: 799
|
|
|
|
Anmeldedatum: 02.05.12
|
|
|
|
Wohnort: ---
|
|
|
|
Version: R2009b
|
|
|
|
|
|
Verfasst am: 23.05.2012, 15:39
Titel:
|
|
Hallo,
du bist über die Pseudoinverse gegangen und hast das Problem zuvor linearisiert. Ich hatte deinen Code erst nicht verstanden...
Nun, wie sieht denn der Zusammenhang z=z(x) aus? z_i=z(x_i)?
Grüße, Marc
|
|
|
Wedge23 |
Themenstarter
Forum-Newbie
|
|
Beiträge: 4
|
|
|
|
Anmeldedatum: 23.05.12
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 23.05.2012, 15:48
Titel:
|
|
ich hab mehrer codes rumprobiert, das war nur gerade den wo ich noch zur hand hatte. Den code hab ich im forum hier gefunden und er hatte funktioniert war auch überrascht das das so geht.
Ich bin auch für jeglichen anderen code der geht froh, muss net der da oben überarbeitet werden.
Zu deiner frage:
ja z = z(x), also grob z = (x^2)*sin(pi/3)...... ( wobei x und z eben Spaltenvektoren sind )
gruß wedge
|
|
|
MaFam |
Forum-Meister
|
|
Beiträge: 799
|
|
|
|
Anmeldedatum: 02.05.12
|
|
|
|
Wohnort: ---
|
|
|
|
Version: R2009b
|
|
|
|
|
|
Verfasst am: 23.05.2012, 16:17
Titel:
|
|
Im Grund musst du nur h=h(x)=(x/z(x)) anpassen. Ich würde allerdings eher p = polyfit(x_t,y_t,1) verwenden. Dazu verwendest du die Transformation log(y) = log(b(1))+b(2)*log(h) mit h=(x/z(x)). Denke an die Verwendung des Punktoperators.
x_t=log(h)=log((x/z(x)))
y_t=log(y)
dann folgt
p_1=log(b(1))
p_2=b(2)
Abschließend noch das ganze zurück transformieren.
|
|
|
Wedge23 |
Themenstarter
Forum-Newbie
|
|
Beiträge: 4
|
|
|
|
Anmeldedatum: 23.05.12
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 23.05.2012, 17:33
Titel:
|
|
vielen dank erstmal für dene mühe.
irgendwie steh ich aber aufn schlauch, vielleicht weil ich mich scho den ganzen tag damit rumärgere........
so sieht mein code jetzt aus, aber die kurve die er mir ausgibt hat net wirklich was mit meiner punktemenge zu tun. Vielleicht hab ich mich vorhin aber auch ungeschickt ausgedrückt. z ist zwar von x abhängig wird aber seperat berechnet und liegt mir ebenfalls in konkrete werte vor. ich wollt damit nur andeuten, dass für jedes x ein andere z wert vorhanden ist.
|
|
|
MaFam |
Forum-Meister
|
|
Beiträge: 799
|
|
|
|
Anmeldedatum: 02.05.12
|
|
|
|
Wohnort: ---
|
|
|
|
Version: R2009b
|
|
|
|
|
|
Verfasst am: 23.05.2012, 22:03
Titel:
|
|
Ich denke, z(x) muss man schon explizit angeben. Außerdem hatten wir p_1 und p_2 vertauscht. Zudem stimmte deine Rücktransformation nicht.
|
|
|
Wedge23 |
Themenstarter
Forum-Newbie
|
|
Beiträge: 4
|
|
|
|
Anmeldedatum: 23.05.12
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 24.05.2012, 07:58
Titel:
|
|
super,
jetzt läufts.
nochmals vielen dank deine mühe.
|
|
|
|
|
Einstellungen und Berechtigungen
|
|
Du kannst Beiträge in dieses Forum schreiben. Du kannst auf Beiträge in diesem Forum antworten. Du kannst deine Beiträge in diesem Forum nicht bearbeiten. Du kannst deine Beiträge in diesem Forum nicht löschen. Du kannst an Umfragen in diesem Forum nicht mitmachen. Du kannst Dateien in diesem Forum posten Du kannst Dateien in diesem Forum herunterladen
|
|
Impressum
| Nutzungsbedingungen
| Datenschutz
| FAQ
| RSS
Hosted by:
Copyright © 2007 - 2024
goMatlab.de | Dies ist keine offizielle Website der Firma The Mathworks
MATLAB, Simulink, Stateflow, Handle Graphics, Real-Time Workshop, SimBiology, SimHydraulics, SimEvents, and xPC TargetBox are registered trademarks and The MathWorks, the L-shaped membrane logo, and Embedded MATLAB are trademarks of The MathWorks, Inc.
|
|