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

Große txt-Datei mit Header

 

Johnston

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 07.10.2012, 12:37     Titel: Große txt-Datei mit Header
  Antworten mit Zitat      
Hallo Matlab-Forum,

Ich habe ein Problem mit einer sehr großen txt-datei.
Aus einer Messung heraus wird eine txt-Datei mit 45 Spalten und jeweils rund 50.000 Zeilen erzeugt.
Wenn ich diese txt nun in Matlab einlesen will, erhalte ich immer einen Memory fehler.
Weiterhin hat die Datei Header-Lines, die ich nicht einlesen will (will nur die Daten Plotten).
Bisher hatte ich es nur mit maximal 5 Spalten zu tun wo ich jeder Spalte einen Vektor [A B C D E] zugeordnet habe und dann die entsprechenden Vektoren geplottet habe.
Nur wie mache ich das bei 45 Spalten???
Den Header habe ich bisher mit
Code:

....'Headerlines','9');
 


versucht zu elminieren, was jedoch auch nicht geklappt hat.

Kann mir jemand sagen, wie ich bei so einer Datenmenge am besten vorgehen sollte?`

Danke Euch, Johnston


Harald
Forum-Meister

Forum-Meister


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

was ist denn diese Datei formatiert?
Strings? Zahlen? 50.000 Zeilen á 45 Spalten sollte insofern kein Problem sein, weil das insgesamt "nur" 18 MB an Daten sind.

Zitat:
Nur wie mache ich das bei 45 Spalten???

Welche der Spalten interessieren dich denn? Mit * kannst du auch Spalten "überspringen", die du nicht brauchst.

Wie sieht der komplette Befehl aus, den du verwendest?

Zitat:
was jedoch auch nicht geklappt hat.

Inwiefern nicht? Fehlermeldung oder unerwartete Ergebnisse?

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

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 07.10.2012, 13:17     Titel: Große txt-Datei mit Header
  Antworten mit Zitat      
Hallo Harald,

also die Datei die erzeugt wird, hat eine größe von rund 63MB.

Die Datei besteht im Header aus 6 Textzeilen, dann kommt eine Zeile mit den Variablenbezeichnungen, dann eine Zeile mit den entsprechenden Einheiten der Werte und danach kommen nur noch Zahlen.

Bisher habe ich wie gesagt nur mit kleineren Dateien zu tun gehabt und habe es bisher wie folgt gemacht:

Code:

[a b c d e f]=textread('file.txt','%f %f %f %f %f %f');
 


Nun würde ich die Headerlines so ausblenden

Code:

[a b c d e f]=textread('file.txt','%f %f %f %f %f %f','headerlines',6');
 

Hierbei bekomme ich immer den Fehler, dass ein ")" erwartet wird.

Okay, also Spalten mit * überspringen ist was neues für mich. Wie macht man das?

Grüße, Johnston
 
Harald
Forum-Meister

Forum-Meister


Beiträge: 24.501
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 07.10.2012, 14:48     Titel:
  Antworten mit Zitat      
Hallo,

Zitat:
Hierbei bekomme ich immer den Fehler, dass ein ")" erwartet wird.

Das deutet auf einen Syntaxfehler im Code hin. Ist im Editor rechts oben ein rotes Quadrat und auf der Seite rote Balken? Dann klick mal auf die roten Balken und schau dir die entsprechenden Meldungen an.

Zitat:
Okay, also Spalten mit * überspringen ist was neues für mich. Wie macht man das?

Zunächst würde ich TEXTSCAN statt TEXTREAD verwenden. DAs Überspringen funktioniert z.B. mit '%*f'. Interessant kann auch sein, den Rest einer Zeile zu überspringen, siehe Example 4 in
Code:


Grüße,
Harald
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.