WICHTIG: Der Betrieb von goMatlab.de wird privat finanziert fortgesetzt. - Mehr Infos...

Mein MATLAB Forum - goMatlab.de

Mein MATLAB Forum

 
Gast > Registrieren       Autologin?   

Partner:




Forum
      Option
[Erweitert]
  • Diese Seite per Mail weiterempfehlen
     


Gehe zu:  
Neues Thema eröffnen Neue Antwort erstellen

stepwiselm mit festen Start-Prädiktoren

 

Amalie

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 26.04.2021, 12:21     Titel: stepwiselm mit festen Start-Prädiktoren
  Antworten mit Zitat      
Hallo Zusammen,

gibt es über stepwiselm die Möglichkeit Start Prädiktoren zu übergeben, die definitiv ins Regressionsmodell aufgenommen werden, auch wenn Sie die Kriterien für Add und Remove nicht zwingend erfüllen? alle übrigen Prädiktoren sollen dann wie gewohnt geprüft werden, ob sie mit ins Modell kommen.

mdl02 = stepwiselm(X,y,'Verbose',2,'Criterion','SSE','Upper','linear');

Als fixe Prädiktoren sollen y ~ x1 + x2 + x5 + x9 mit ins Modell aufgenommen und alle anderen nach dem SSE-Kriterium hinzu- bzw. wieder verworfen werden.
Wenn es stepwiselm nicht ermöglicht feste Startprädiktoren zu setzen, kennt Ihr dann ggf. Alternativen?

Viele Grüße
Amalie


Harald
Forum-Meister

Forum-Meister


Beiträge: 24.448
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 26.04.2021, 12:32     Titel:
  Antworten mit Zitat      
Hallo,

ich würde versuchen, die Option 'Lower' mit einer Terms Matrix anzugeben.
https://www.mathworks.com/help/stat.....red-DefinitionTermsMatrix

Grüße,
Harald
_________________

1.) Ask MATLAB Documentation
2.) Search gomatlab.de, google.de or MATLAB Answers
3.) Ask Technical Support of MathWorks
4.) Go mad, your problem is unsolvable ;)
Private Nachricht senden Benutzer-Profile anzeigen
 
Amalie

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 26.04.2021, 16:24     Titel:
  Antworten mit Zitat      
Hallo Harald,

habe auch schon an 'Lower' gedacht.
Wenn ich für 10 mögliche Prädiktoren, 4 initial setzen will, die nie aus dem Modell eliminiert werden sollen, ergibt sich folgendes mittels der Term-Schreibweise:

Tlower = [1 0 0 0 0 0 0 0 0 0 0;0 1 0 0 0 0 0 0 0 0;0 0 0 0 1 0 0 0 0 0 0;0 0 0 0 0 1 0 0 0 0 0];

mdl02 = stepwiselm(X,y,'Lower',Tlower,'Verbose',2,'Criterion','SSE','Upper','linear');

Tlower habe ich als Matrix angelegt, da ich nach meinem Verständnis ja nicht alle Terme auf einmal in Interaktion haben will, aber vielleicht habe ich da auch ein Denkfehler und muss das mit einer einzelnen Termschreibweise praktizieren. Als Ergebnis kommt immer das selbe heraus. Es wird die Selektion in der selben Weise wie ohne "Lower" vorgenommen und die Regressionsgleichung wird als y ~ 1+ x6 + x7 definiert. Folglich ist der feste Term nicht mit in der Regression enthalten.

Es soll y ~ x1 + x2 + x5 + x9 fest im Modell stehen und je nach Selektion bspw x6 und x7 zusätzlich aufgenommen werden, sodass dann ein Modell folglich definiert ist als: y ~ x1 + x2 + x5 + x9 + x6 + x7.

Ich glaube, ich habe einen Denkfehler bzw. sollte ich ggf. eher manuell die Vor- und Rückwärtsselektion ausüben oder?

Danke und Viele Grüße
Amalie
 
Harald
Forum-Meister

Forum-Meister


Beiträge: 24.448
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 26.04.2021, 16:30     Titel:
  Antworten mit Zitat      
Hallo,

in der Art hätte ich es auch versucht. Eventuell könnte noch ein reproduzierbares Beispiel helfen, um sich das genauer anzusehen. Ansonsten würde ich mich an den Technischen Support von MathWorks wenden.

Grüße,
Harald
_________________

1.) Ask MATLAB Documentation
2.) Search gomatlab.de, google.de or MATLAB Answers
3.) Ask Technical Support of MathWorks
4.) Go mad, your problem is unsolvable ;)
Private Nachricht senden Benutzer-Profile anzeigen
 
Amalie

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 09.05.2021, 19:03     Titel:
  Antworten mit Zitat      
Kurzes Update nachdem ich mit dem Mathwork Support kommuniziert habe:

Mit der Funktion stepwiselm lassen sich nicht direkt initiale feste Terme setzen. Sinnvolle Vorgehensweisen wären die Nutzung von fitlm und anschließende eine manuelle Erweiterung der Terme mittels addTerms. Wenn die festen Prädiktoren signifikante Werte aufweisen, lassen sich diese durch stepwiselm mittels 'PEnter' ins Model aufnehmen. Dies war in meinen Fall jedoch nicht möglich, da alle Terme eine ähnliche Schwelle gehabt hätten und ich so die Selektion zu sehr anhand meiner festen Prädiktoren angepasst hätte.

Vielen Dank dennoch für das Feedback. Smile

PS: Super Forum!!!
 
Neues Thema eröffnen Neue Antwort erstellen



Einstellungen und Berechtigungen
Beiträge der letzten Zeit anzeigen:

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 | goMatlab RSS Button 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.