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

Erste Spalte in gemischter Datei entfernen

 

p.nietnagel
Forum-Fortgeschrittener

Forum-Fortgeschrittener


Beiträge: 53
Anmeldedatum: 19.02.09
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 19.02.2009, 20:10     Titel: Erste Spalte in gemischter Datei entfernen
  Antworten mit Zitat      
Hallo,

mein Problem: ich habe ein .dat file, das aus 258 Spalten und 83 Zeilen besteht. Die erste Spalte besteht aus unterschiedlich langen strings, die restlichen 257 Spalten sind immer gleich lange Zahlen mit 3 Dezimalstellen.
Ich hab versucht, mittels fscanf die Datei einzulesen und die string-Spalte zu entfernen. Funktioniert leider nicht. Schwierigkeit: jedes Zeichen in jeder Zeile (auch Leerzeichen und Punkte beiden Dezimalzahlen) werden als 'char' verstanden. Meine Idee war nun, dass man einfach length(Zeile) minus die Anzahl 'char' aller Dezimalzahlen und Leerzeichen angibt und sich genau diese Zahlen dann als Matrix rausschreibt. Funktioniert aber nicht.

Hier mal 2 Zeilen (gekürzt um 252 Zahlen) aus der .dat file als Beispiel:

Coh(O1, Fp1) 0.000 0.462 0.413 0.472 0.441
Coh(PO3, FC3) 0.000 0.350 0.489 0.430 0.441

Hat jemand eine Idee, wie man das Problem lösen könnte?


Vielen Dank im Voraus!


Grüße,
p.nietnagel
Private Nachricht senden Benutzer-Profile anzeigen


Lim

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 19.02.2009, 21:21     Titel:
  Antworten mit Zitat      
Hi,
benutze am besten textscan für den Import eines String/Zahlen-Gemischs. Einen geeigneten Format-String kannst du à la ['%s', repmat(' %f',1,257)] zusammenbasteln.
Wenn Du bei fscanf bleiben willst, bietet sich ['%*s', repmat(' %f',1,257)] an, wenn Du auf den String verzichten kannst (bitte prüf nochmal die Position des "Ignorier-Sternchens" * anhand der fscanf-Doku, habs hier nicht testen können).
Viel Erfolg
 
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.