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

einzelne Zeilen einer Matrix "filtern"

 

geieraffe
Forum-Fortgeschrittener

Forum-Fortgeschrittener


Beiträge: 97
Anmeldedatum: 19.04.12
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 29.05.2012, 08:23     Titel: einzelne Zeilen einer Matrix "filtern"
  Antworten mit Zitat      
Guten Morgen liebe Community,

wie man schon am Titel sehen kann, steh ich heute morgen noch etwas auf dem Schlauch ... mir ist leider absolut nichts eingefallen wie ich mein Problem benennen kann, deshalb half suchen mir auch nicht weiter:

Ich habe eine Matrix mit k Zeilen,
jede Zeile hat NaNs und Zahlen als Einträge,
ich möchte die Summe einer Zeile,
also habe ich mit isnan(matrix(k,Smile einen "Filter" erstellt um nur noch Zahlen zu haben, nur dann funktioniert SUM() ...

werder
Code:

ohneNaN = offsetCurve(~isnan(offsetCurve(k,:)));
sum_corrData    = sum(ohneNaN);
absSum_corrData = sum(abs(ohneNaN));
 


noch
Code:

ohneNaN = offsetCurve(~isnan(offsetCurve));
sum_corrData    = sum(ohneNaN);
absSum_corrData = sum(abs(ohneNaN));
 


liefern mir das gewünschte Ergebnis. Eher noch das zweite Codebeispiel, allerdings bekomm ich dort als Ergebnis alle Einträge der Matrix in einer Spalte untereinander. Zum Summieren brächte ich aber wieder Zeilen.

Ich hoffe ich habs einigermaßen verständlich erklärt...

Vielen Dank schonmal
Private Nachricht senden Benutzer-Profile anzeigen


Vito
Forum-Guru

Forum-Guru


Beiträge: 315
Anmeldedatum: 02.11.09
Wohnort: Stuttgart
Version: ---
     Beitrag Verfasst am: 29.05.2012, 08:39     Titel:
  Antworten mit Zitat      
Hi,

so funktioniert:
Code:

matrix = [12;25;7;NaN,5,78;NaN;34];
idx = isnan(matrix);
matrix(idx)=[]  % NaNs entfernen
Summe = sum(matrix);
 


Gruß,
Vito
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 - 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.