|
|
Lineare Regression nur mit möglichen Einträgen |
|
Nekrokeks |

Forum-Anfänger
|
 |
Beiträge: 16
|
 |
|
 |
Anmeldedatum: 12.12.13
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: R2012b
|
 |
|
|
 |
|
Verfasst am: 25.02.2014, 12:33
Titel: Lineare Regression nur mit möglichen Einträgen
|
 |
Hallo liebe Community,
ich hänge leider nun schon länger an einem Problem zur Linearen Regression. Ich versuche mal zu schildern:
Ich habe z.b. 2 30x6 Matrizen (eine x, eine y) und würde jetzt gerne die Lineare Regression anwenden, um die gefittete Steigung zu erhalten. mit Polyfit ist das ja gut möglich. Allerdings werden in meinen Matrizen zum Teil Nullen oder Inf auftauchen, da es Messdaten sind und manchmal auch Konzentrationen von 0 dabei sind.
Ich habe leider keinen Ansatz :/ Sollte ich die "inf" oder "0" rausmachen (allerdings müsste ich ja dann in x/y denselben Eintrag auch löschen) oder kann ich Matlab irgendwie anweisen aus beiden Matrizen nur korrespondierende Einträge mit Zahlen zu benutzen?
Vielen Dank für eure Vorschläge
|
|
|
|
|
Harald |

Forum-Meister
|
 |
Beiträge: 24.501
|
 |
|
 |
Anmeldedatum: 26.03.09
|
 |
|
 |
Wohnort: Nähe München
|
 |
|
 |
Version: ab 2017b
|
 |
|
|
 |
|
Verfasst am: 25.02.2014, 18:51
Titel:
|
 |
Hallo,
inf und 0-Werte (sofern sie fehlenden Werten entsprechen) sollten auf NaN gesetzt werden.
Wenn du regress verwendest, wird das dann automatisch korrekt behandelt.
Merkwürdig erscheint mir allerdings, dass du zwei Matrizen hast.
Möchtest du die Steigung (a) für jede Spalte oder (b) für die gesamte Matrix?
(a) dann musst du über die Spalten iterieren.
(b) dann musst du die Matrizen z.B. mit reshape in Vektoren umwandeln.
Grüße,
Harald
|
|
|
Nekrokeks |
Themenstarter

Forum-Anfänger
|
 |
Beiträge: 16
|
 |
|
 |
Anmeldedatum: 12.12.13
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: R2012b
|
 |
|
|
 |
|
Verfasst am: 25.02.2014, 19:22
Titel:
|
 |
Hallo Harald,
vielen Dank für deine Antwort.
Ich möchte für jeweils 2 korrelierende Spalten eine lineare Regression durchführen. Mir ist dann im Laufe des Tages auch gekommen, dass es eine gute Idee ist alles was unbrauchbar ist zu NaNs zu setzen. Dann habe ich regress benutzt, aber leider eine andere Steigung herausbekommen, als es sein sollte (mit Excel prüfe ich).
Ich vermute mal, dass ich irgendwo mit regress einen Fehler gemacht habe, denn das sollte ja funktionieren.
Auf meiner Suche nach einer anderen Lösung bin ich nach einiger Probiererei auf dieses hier gekommen:
Also zuerst alles auf NaNs gesetzt und dann die Indizes, die in beiden Matrizen keine NaNs sind in "IndexGes" gespeichert. Und dann funktioniert das einwandfrei mit polyfit = )
|
|
|
Harald |

Forum-Meister
|
 |
Beiträge: 24.501
|
 |
|
 |
Anmeldedatum: 26.03.09
|
 |
|
 |
Wohnort: Nähe München
|
 |
|
 |
Version: ab 2017b
|
 |
|
|
 |
|
Verfasst am: 25.02.2014, 19:28
Titel:
|
 |
Hallo,
Zitat: |
Ich vermute mal, dass ich irgendwo mit regress einen Fehler gemacht habe, denn das sollte ja funktionieren. |
Ja, sollte es. Um dir zu sagen, wo das Problem liegt, müssten wir allerdings sehen, was du genau gemacht hast.
Zitat: |
Und dann funktioniert das einwandfrei mit polyfit = ) |
Gut :)
Grüße,
Harald
|
|
|
Nekrokeks |
Themenstarter

Forum-Anfänger
|
 |
Beiträge: 16
|
 |
|
 |
Anmeldedatum: 12.12.13
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: R2012b
|
 |
|
|
 |
|
Verfasst am: 25.02.2014, 19:30
Titel:
|
 |
Hallo Harald,
ja ich lasse das jetzt einfach so - auch wenn es ein wenig umständlicher ist! Auf Schnelligkeit kommt es bei mir zum Glück nicht drauf an = )
Grüße
Nekro
|
|
|
|
|
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 - 2025
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.
|
|