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

Löschen von Zeilen in einem Cell Array

 

Daniel_MD89
Forum-Newbie

Forum-Newbie


Beiträge: 2
Anmeldedatum: 14.01.15
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 15.01.2015, 01:16     Titel: Löschen von Zeilen in einem Cell Array
  Antworten mit Zitat      
Hi Leute,

Meine .csv wird eigentlich so eingelesen, wie ich das möchte, nun ist es an der zeit sie zu filtern. (siehe % flter analog data (delete subframes))

Ich möchte alle ZEILEN löschen, die in der ZWEITEN Spalte eine 1,2,3 oder 4 beinhalten (wenn die Zelle leer ist, soll die Zeile bestehen bleiben).

Der untenstehende CODE löscht allerdings die erste Zeile, sonst nichts.


Code:
% open and convert csv
fid = fopen('FO_1.csv','r');
C = textscan(fid, repmat('%s',1,395), 'delimiter',',', 'CollectOutput',true);
C = C{1};
[b]
% flter analog data (delete subframes)
C(C{1}(:,2)==1|2|3|4,:)=[]; %löscht nur erste Zeile "Devices"[/b]

% write .csv in xlsx file
filename = 'test.xlsx';
xlswrite(filename,C);

% close file
fclose(fid);


Vielleicht kann mir ja jmd helfen, wäre euch dankbar!
Grüße
ps. Datei ist im Anhang

FO_1.rar
 Beschreibung:

Download
 Dateiname:  FO_1.rar
 Dateigröße:  2.75 MB
 Heruntergeladen:  370 mal
Private Nachricht senden Benutzer-Profile anzeigen


Harald
Forum-Meister

Forum-Meister


Beiträge: 24.499
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 15.01.2015, 10:02     Titel:
  Antworten mit Zitat      
Hallo,

| funktioniert nicht in der Form, wie du es dir vorstellst. Zudem: entweder ist C schon ein Double-Array, dann ist das {1} nicht sinnvoll, oder es ist noch keines, dann ist die Indizierung nicht sinnvoll.

Für ein Double-Array Am einfachsten:
Code:
C(ismember(C(:,2), 1:4), :)=[];


Grüße,
Harald
Private Nachricht senden Benutzer-Profile anzeigen
 
Daniel_MD89
Themenstarter

Forum-Newbie

Forum-Newbie


Beiträge: 2
Anmeldedatum: 14.01.15
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 17.01.2015, 20:40     Titel:
  Antworten mit Zitat      
Danke, hat mir geholfen. Hab am Ende die .csv allerdings doch als matrix und nicht als cell-array eingelesen. hat das leben vereinfacht. Very Happy
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.