|
|
Daten aus ascii-Datei einlesen |
|
akaia |
Gast
|
 |
Beiträge: ---
|
 |
|
 |
Anmeldedatum: ---
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 08.02.2010, 12:16
Titel: Daten aus ascii-Datei einlesen
|
 |
|
 |
|
Hallo!
Ich sitze schon eine Weile an einer Aufgabe und komme leider nicht weiter. Habe schon einige Ansätze ausprobiert und bin kläglich gescheitert. Könnte mir jemand helfen beim Einlesen von Daten aus einer ascii-Datei (*.lvm)?
Die Daten liegen spaltenweise vor -> 2 Spalten und ca. 50 Zeilen. Das Ganze sieht dann folgendermaßen aus:
133,786102 104,205933
128,177246 105,952820
132,886261 108,058777
130,261780 112,193787
126,739075 114,010071
129,174988 117,624939
127,583984 120,568695
122,966888 122,884094
120,276947 126,719055
124,296570 130,166290
125,505127 131,988647
Problematisch ist der Aufbau, weil erst ein Tab vorliegt, dann die Werte mit Komma, anstatt eines Punktes vorliegen.
Ich habe schon einiges ausprobiert. Load funktioniert nicht, weil die Komma ausgelassen werden und die Null nach dem Komma fehlt. fread etc. liefert mir auch kein zufriedenstellendes Ergebnis.
An dieser Stelle hoffe ich auf eure Hilfe. Die Spalten sollen nach dem Einlesen als Vektoren gespeichert werden, um mit den Werten weiterarbeiten zu können.
Grüße und besten Dank im Voraus
|
|
|
|
|
aj.geissler |

Forum-Guru
|
 |
Beiträge: 251
|
 |
|
 |
Anmeldedatum: 26.11.07
|
 |
|
 |
Wohnort: Seeheim-Jugenheim
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 08.02.2010, 13:01
Titel:
|
 |
Hi,
probier mal folgendes:
Grüße[/code]
_________________
Andreas Geißler
|
|
|
akaia |
Gast
|
 |
Beiträge: ---
|
 |
|
 |
Anmeldedatum: ---
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 08.02.2010, 13:49
Titel:
|
 |
Es funktioniert!
Die Komma werden durch einen Punkt ersetzt und ich kann die Daten nachdem sie erneut geladen wurden, auslesen und weiterverarbeiten. Herzlichen Dank!
Muss auch sagen, dass dies bislang die schnellste sowie einfachste Variante ist! Super!
|
|
|
gast |
Gast
|
 |
Beiträge: ---
|
 |
|
 |
Anmeldedatum: ---
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 08.02.2010, 18:19
Titel: frage über deine lösung
|
 |
Hallo,
ich hätte gern eine frage zu deiner lösung ,gilt dese lösung nur für deine daten oder ist das allgemein?
ich habe auch daten mit komma und ich will sie direkt einlesen und automatisch durch punkt ersetzen ,ich habe dein code benutzt ,und es hat funktioniert.
ich habe messdaten von 200000 werte mit 8 stellen nach dem komma.
könnte man mit dem code 200000 werte einlesen und automatisch durch punkt ersetzen?
vielen dank
|
|
|
aj.geissler |

Forum-Guru
|
 |
Beiträge: 251
|
 |
|
 |
Anmeldedatum: 26.11.07
|
 |
|
 |
Wohnort: Seeheim-Jugenheim
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 08.02.2010, 18:41
Titel:
|
 |
Hi,
das müsste auch mit Deiner Datei funktionieren. Die Größe liegt wahrscheinlich so zwischen 300 und 600 kByte ?
Nach dem Einlesen Dieser Datei mit 200.000 Messwerten á ca. 20 Zeichen (+,-,. + Ziffern) hast Du einen Vektor mit 4 Mio. Werten, was einer Matrix von 2000 x 2000 entspricht.
Bei genügend Arbeitsspeicher sollte dies kein Problem sein.
Mann kann das binäre Einlesen (und Wegschreiben) stückeln, so daß z.B. erst nur die Hälfte der Datei eingelesen, die Komma in Punkt konvertiert und dann weggeschrieben werden.
Einfach mal probieren ...
Grüße
_________________
Andreas Geißler
|
|
|
gast |
Gast
|
 |
Beiträge: ---
|
 |
|
 |
Anmeldedatum: ---
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 08.02.2010, 19:37
Titel: frage zu deiner lösung
|
 |
Hallo,
die Grösse der Datei ist 2439KB und jedes datei hat 200000 werte die eingelesen werden müssen ,ich darf dieses datei nicht in 2 hälften teilen und einlesen,es ist eine messung komplett.
ich könnte das einlesen,aber ich weiss nur nicht ob nach dem einlesen die daten so bleiben wie sie sind.
wie kann ich das überprüfen bei diese dateigrösse?
oder bleibt nach dem ersetzen durch punkt so?
grüssse
|
|
|
aj.geissler |

Forum-Guru
|
 |
Beiträge: 251
|
 |
|
 |
Anmeldedatum: 26.11.07
|
 |
|
 |
Wohnort: Seeheim-Jugenheim
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 08.02.2010, 19:54
Titel:
|
 |
Hi,
Du kannst die Daten auch in eine neue Datei schreiben, so daß die Originaldaten nicht verloren gehen!
Der Kniff bei der Lösung hier war ja nur, daß eine Textdatei erstellt wurde, die sehr schnell mit "load" zu laden war.
Bei spezielleren Problemen wird man aber nicht umhin kommen, die Daten "Stück für Stück" einzulesen (auch binär) und die Matlab-Daten peaux á peaux zu einer Gesamtmatrix zusammenzupacken.
Grüße
_________________
Andreas Geißler
|
|
|
|
|
Einstellungen und Berechtigungen
|
|
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
| 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.
|
|