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

NaN & Inf filtern

 

flashpixx
Forum-Guru

Forum-Guru


Beiträge: 355
Anmeldedatum: 19.04.08
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 28.03.2009, 15:08     Titel: NaN & Inf filtern
  Antworten mit Zitat      
Hallo,

ich habe recht große Matrizen, die in manchen Elemente ein NaN oder Inf enthalten, da ich nun den Mittelwert über alle Elemente bilden muss, darf die Matrix kein NaN bzw Inf enthalten. Wie kann ich möglichst effizient die Elemente die NaN bzw Inf sind einfach auf 0 setzen?

Danke

Phil
Private Nachricht senden Benutzer-Profile anzeigen


josekamara
Forum-Meister

Forum-Meister


Beiträge: 529
Anmeldedatum: 26.04.08
Wohnort: München
Version: ---
     Beitrag Verfasst am: 28.03.2009, 15:45     Titel:
  Antworten mit Zitat      
Sie können eine Doppelschleife über Spalten (i) und Zeilen (j) benutzen wo dann gefragt wird wenn A(i,j) NAN oder Inf beträgt auf Null einsetzen:
Hinweis:
Code:
if isnan(A(i,j))==1 || isinf(A(i,j))==1
.....

_________________

Simulation
Private Nachricht senden Benutzer-Profile anzeigen
 
Harald
Forum-Meister

Forum-Meister


Beiträge: 24.449
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 28.03.2009, 16:21     Titel:
  Antworten mit Zitat      
Logische Indizierung dürfte da effizienter sein, z.B.

Code:
A(isnan(A) | isinf(A)) = 0;


Ich kann es gerade nicht ausprobieren, das sollte aber funktionieren.

Falls es mal nur um NaN geht und die Statistics Toolbox zur Verfügung steht: dort gibt es NANMEAN.
Private Nachricht senden Benutzer-Profile anzeigen
 
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.