|
|
txt.-Datei OHNE Header einlesen |
|
veko |

Forum-Anfänger
|
 |
Beiträge: 30
|
 |
|
 |
Anmeldedatum: 13.10.13
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 13.10.2013, 17:43
Titel: txt.-Datei OHNE Header einlesen
|
 |
Hallo, ich habe ein Problem. Ich möchte eine txt.-datei einlesen um dann mit den darin enthaltenen Werten weiter zuarbeiten - aber ohne den Header (der vor den in der txt.-datei relevanten Daten kommt) - .
Die Datei hat dieses Format:
1 header
2 header
3 0,256 0,1235
4 0,658 0,1245
.
.
.
80 1,344 0,1887
Mein bisheriger code
gibt mir nur ein struct aus.
Und hier weis ich nicht wie das struct am besten, ohne Header, ausgelesen werden kann.
Über eine Schleife in der ich die Spalte und die Zeilen definiere, die für mich relevant sind und somit der Header unberücksichtigt bleibt?
Ich hoffe ich konnte mein Problem verständlich darstellen und bitte um hilfreiche Tipps
Vg
veko
|
|
|
|
|
Harald |

Forum-Meister
|
 |
Beiträge: 24.501
|
 |
|
 |
Anmeldedatum: 26.03.09
|
 |
|
 |
Wohnort: Nähe München
|
 |
|
 |
Version: ab 2017b
|
 |
|
|
 |
|
Verfasst am: 13.10.2013, 17:47
Titel:
|
 |
Hallo,
wenn deine Datei tatsächlich Kommas als Dezimaltrennzeichen verwendet, dürfte das einfachste sein, das Import Tool zu verwenden (Rechtsklick auf die Datei --> Import Data).
Ansonsten: mit einem der online verfügbaren Skripte zunächst alle Kommas in Punkte umwandeln und die Datei dann mit textscan einlesen.
Grüße,
Harald
|
|
|
veko |
Themenstarter

Forum-Anfänger
|
 |
Beiträge: 30
|
 |
|
 |
Anmeldedatum: 13.10.13
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 13.10.2013, 18:25
Titel:
|
 |
Hallo Harald,
ja leider werden Kommata anstatt Punkte verwendet.
um das ganze umzuwandeln wollte ich diese Befehle verwenden:
aber das hilft mir ja noch nicht weiter, die eigentlich Datei aus dem struct zu lesen und dabei den Header zu ignorieren.
|
|
|
Harald |

Forum-Meister
|
 |
Beiträge: 24.501
|
 |
|
 |
Anmeldedatum: 26.03.09
|
 |
|
 |
Wohnort: Nähe München
|
 |
|
 |
Version: ab 2017b
|
 |
|
|
 |
|
Verfasst am: 13.10.2013, 18:45
Titel:
|
 |
Hallo,
hast du den ersten Vorschlag probiert?
Hast du es mit textscan (und 'headerlines') statt importdata probiert?
Der von dir angegebene Code sieht aus, als würdest du mit memory mapped files arbeiten wollen.
Grüße,
Harald
|
|
|
veko |
Themenstarter

Forum-Anfänger
|
 |
Beiträge: 30
|
 |
|
 |
Anmeldedatum: 13.10.13
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 13.10.2013, 18:54
Titel:
|
 |
ja, der Befehl sieht so aus:
die 84 steht für die Anzahl der Zeilen die überlesen werden sollen bis die eigentlichen Daten kommen.
Jedoch habe ich mehrere Datensätze und würde es gerne über einen Befehl "automatisch" einlesen und nicht über "import data" was zweifels ohne ein guter Tipp ist
vielen Dank für deine Hilfe!
VG
veko
|
|
|
veko |
Themenstarter

Forum-Anfänger
|
 |
Beiträge: 30
|
 |
|
 |
Anmeldedatum: 13.10.13
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 13.10.2013, 19:16
Titel:
|
 |
vielen Dank für den Code.
So ähnlich hatte ich ihn auch schonmal stehen, jedoch kam, genauso wie jetzt, diese Fehlermeldung:
??? Undefined function or method 'eq' for input arguments of type 'struct'.
hast du eine Ahnung wo da der Fehler liegen könnte?
Vg
veko
|
|
|
Harald |

Forum-Meister
|
 |
Beiträge: 24.501
|
 |
|
 |
Anmeldedatum: 26.03.09
|
 |
|
 |
Wohnort: Nähe München
|
 |
|
 |
Version: ab 2017b
|
 |
|
|
 |
|
Verfasst am: 13.10.2013, 19:43
Titel:
|
 |
Hallo,
üblicherweise würde ich textscan auf einen File Identifier anwenden.
Du kannst doch mehrere Befehle in ein Skript bzw. eine Funktion zusammenfassen und das Einlesen so automatisieren?
Ist der Kommentar von 19:16 in den falschen Thread gerutscht? Ich verstehe zumindest nicht, worauf er sich beziehen soll.
Grüße,
Harald
|
|
|
veko |
Themenstarter

Forum-Anfänger
|
 |
Beiträge: 30
|
 |
|
 |
Anmeldedatum: 13.10.13
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 13.10.2013, 20:13
Titel:
|
 |
Hallo Harald,
nein der gehörte hier her.
Diese Fehlermeldung: ??? Undefined function or method 'eq' for input arguments of type 'struct'. kommt wenn ich diesen code durchlaufen lasse
VG
veko
|
|
|
Harald |

Forum-Meister
|
 |
Beiträge: 24.501
|
 |
|
 |
Anmeldedatum: 26.03.09
|
 |
|
 |
Wohnort: Nähe München
|
 |
|
 |
Version: ab 2017b
|
 |
|
|
 |
|
Verfasst am: 13.10.2013, 20:48
Titel:
|
 |
Hallo,
was soll burst1000Hz denn in diesem Code sein?
Wie rufst du comma2point auf?
Grüße,
Harald
|
|
|
veko |
Themenstarter

Forum-Anfänger
|
 |
Beiträge: 30
|
 |
|
 |
Anmeldedatum: 13.10.13
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 13.10.2013, 21:09
Titel:
|
 |
Ich hatte gedacht mit
bekomme ich es hin die kommata in Punkte umzuwandeln.
Das unterprogramm sieht folgendermaßen aus:
aber funktionieren tut es nicht. Matlab spuckt die Fehlermeldung:"Function definitions are not permitted at the prompt or in scripts." aus.
VG
veko
|
|
|
Harald |

Forum-Meister
|
 |
Beiträge: 24.501
|
 |
|
 |
Anmeldedatum: 26.03.09
|
 |
|
 |
Wohnort: Nähe München
|
 |
|
 |
Version: ab 2017b
|
 |
|
|
 |
|
Verfasst am: 13.10.2013, 21:36
Titel:
|
 |
Hallo,
eine Funktion muss immer in einer separaten Datei stehen. Die Originalfunktion sah vermutlich so aus, jedenfalls wäre das sinnvoll:
Sinnvolle Aufrufe wären dann:
oder für mehrere Dateien auf einmal
Ich würde eine gründliche und systematische Einarbeitung insbesondere in Funktionen empfehlen.
Grüße,
Harald
|
|
|
|
|
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.
|
|