|
|
txt Datei einlesen ohne Import Wizzard |
|
Rob33 |
Forum-Newbie
|
|
Beiträge: 4
|
|
|
|
Anmeldedatum: 09.07.13
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 09.07.2013, 21:38
Titel: txt Datei einlesen ohne Import Wizzard
|
|
|
|
|
Hallo zusammen!
Zunächst einmal bin ich in Sachen MatLab ein blutiger Anfänger, aber wegen einer Studienarbeit bin ich nun gezwungen mich in MatLab einzuarbeiten und bin prompt auf ein Problem gestoßen.
Im Rahmen dieser Studienarbeit muss ich eine txt Datei auswerten, die im Grunde so aufgebaut ist:
Zeit Lenkwinkel1 Lenkwinkel2 Radrechts Radlinks
0,04 0,288696289 2,153930664 3,309020996 3,059387207
0,05 0,293884277 2,151184082 3,320007324 3,036804199
0,06 0,295715332 2,148132324 3,209533691 3,021240234
0,07 0,296630859 2,144470215 3,277282715 3,018188477
0,08 0,294799805 2,148132324 3,310241699 2,952575684
Hier ist nochmein Anfang:
Textread(Ma1.txt, %s, whitespace,, delimiter,\n)
Würde gerne die Datei in den Matlab Workspace einfügen ohne den Import Wizzard zu benutzen.
Wäre echt nett, wenn mir da jemand helfen könnte.
MfG und vielen Dank schon mal!
Beschreibung: |
|
Download |
Dateiname: |
Ma1.txt |
Dateigröße: |
962 Bytes |
Heruntergeladen: |
721 mal |
|
|
|
|
|
Jan S |
Moderator
|
|
Beiträge: 11.057
|
|
|
|
Anmeldedatum: 08.07.10
|
|
|
|
Wohnort: Heidelberg
|
|
|
|
Version: 2009a, 2016b
|
|
|
|
|
|
Verfasst am: 09.07.2013, 23:10
Titel: Re: txt Datei einlesen ohne Import Wizzard
|
|
Hallo Rob33,
Was genau bedeutet "die Datei in den Workspace einfügen"? Soll dies als String importiert werden, oder als Struct mit den Feldern "Zeit", "Lenkwinkel1" etc?
Zunächst müssten die Kommas in Dezimal-Punkte umgewandelt werden. Das geht zwar auch als Programm, wenn es aber nur um wenige Files geht, wäre das auch im Editor zu erledigen.
Matlab ist Case-Sensitive und Strings werden von einfachen Hochkommas eingefasst. Dein Codebeispiel weist deshalb mehrere Fehler auf.
Zitat: |
Textread(Ma1.txt, %s, whitespace,, delimiter,\n) |
Besser:
Gruß, Jan
|
|
|
Winkow |
Moderator
|
|
Beiträge: 3.842
|
|
|
|
Anmeldedatum: 04.11.11
|
|
|
|
Wohnort: Dresden
|
|
|
|
Version: R2014a 2015a
|
|
|
|
|
|
Verfasst am: 09.07.2013, 23:58
Titel:
|
|
vorher die , in . umwandeln in der txt datei. wenn das nicht geht muss mans alles als string einlesen und dann selber umwandeln. zum thema datei einlesen gibt es hier schon einiges im forum. einfach mal suche benutzen
grüße
|
|
|
Rob33 |
Themenstarter
Forum-Newbie
|
|
Beiträge: 4
|
|
|
|
Anmeldedatum: 09.07.13
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 10.07.2013, 10:08
Titel:
|
|
Hallo,
danke erst einmal für die schnellen Antworten!
Leider komme ich immer noch nicht dahin, wo ich hin will. Habe mal ein paar Screenshots gemacht. Mein Problem liegt darin, dass in der Workspace nur eine 8x1 Cell dargestellt wird, ich möchte aber eine 8x5 haben. Die Zahlen sind in der Datein durch einen Tab getrennt.
Vielen Dank schon mal für Eure Hilfe!!
Beschreibung: |
|
Download |
Dateiname: |
maa1.txt |
Dateigröße: |
432 Bytes |
Heruntergeladen: |
742 mal |
|
|
|
Jan S |
Moderator
|
|
Beiträge: 11.057
|
|
|
|
Anmeldedatum: 08.07.10
|
|
|
|
Wohnort: Heidelberg
|
|
|
|
Version: 2009a, 2016b
|
|
|
|
|
|
Verfasst am: 10.07.2013, 10:54
Titel:
|
|
Hallo Rob33,
Bitte poste keine riesigen Bilder, die hauptsächlich weiß sind.
Zitat: |
ich möchte aber eine 8x5 haben. |
Das erfordert immer noch einiges Raten: Was genau ist "eine 8x5"?
Verstehe ich es richtig, dass Du die Kommas nun in Punkte umwandeln konntest?
Wie wäre es mit:
Gruß, Jan
|
|
|
Rob33 |
Themenstarter
Forum-Newbie
|
|
Beiträge: 4
|
|
|
|
Anmeldedatum: 09.07.13
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 10.07.2013, 11:23
Titel:
|
|
Hallo Jan,
leider funktioniert auch das nicht. Mit einer 8x5 Cell meine ich, dass alles Spaltenweise dargestellt werden soll. Zurzeit steht ja alles in einer Spalte (ans <8x1 cell>) ich hätte aber gerne ans <8x5 cell> dargestellt.
PS. Ja die Kommas hab ich durch Punkte ersetzt.
|
|
|
Jan S |
Moderator
|
|
Beiträge: 11.057
|
|
|
|
Anmeldedatum: 08.07.10
|
|
|
|
Wohnort: Heidelberg
|
|
|
|
Version: 2009a, 2016b
|
|
|
|
|
|
Verfasst am: 10.07.2013, 11:32
Titel:
|
|
Hallo Rob33,
Zitat: |
leider funktioniert auch das nicht. |
Was bedeutet das genau? Bekommst Du eine Fehlermeldung oder unterscheidet sich das Ergebnis von Deinen Erwartungen?
Zitat: |
Mit einer 8x5 Cell meine ich, dass alles Spaltenweise dargestellt werden soll. |
Das verstehe ich nicht. Mein Code sollte eigentlich ein [8 x 5] Double Matrix erzeugen. Wenn Du ein CELL benötigst, sollte NUM2CELL dies erledigen können. Rechnen kann man aber mit Matrizen besser.
Mit TEXTREAD liest Du die Datei zeilenweise als String ein und erhälst so einen Cell-String Vektor.
Gruß, Jan
PS. Ich habe nun die riesigen Bilder gelöscht, da man ansonsten diesen Thread nicht mehr sinnvoll lesen kann. Zudem waren sie für die Problembeschreibung nicht hilfreich.
|
|
|
Rob33 |
Themenstarter
Forum-Newbie
|
|
Beiträge: 4
|
|
|
|
Anmeldedatum: 09.07.13
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 10.07.2013, 11:56
Titel:
|
|
Ich bekomme da einen Fehler.
>> FID = fopen('maa1.txt', 'r');
if FID == -1, error('Cannot open file'); end
Head = fgetl(FID);
Value = sscanf(FID, '%g', [5, Inf]).';
fclose(FID);
??? Error using ==> sscanf
First argument must be a string.
Es soll nachher eine Spalte für die Zeit, eine für den Lenkwinkel usw geben und nicht alles in einer Spalte stehen.
Hab mir im Forum und bei goolgle schon die Finger wund gesucht, aber nichts gefunden...
|
|
|
Jan S |
Moderator
|
|
Beiträge: 11.057
|
|
|
|
Anmeldedatum: 08.07.10
|
|
|
|
Wohnort: Heidelberg
|
|
|
|
Version: 2009a, 2016b
|
|
|
|
|
|
Verfasst am: 10.07.2013, 14:31
Titel:
|
|
Hallo Rob33,
Das ist ein Tippfehler, auf den man mit nicht arg zu viel Aufwand kommen könnte: Es muss "fprintf" heissen, nicht "sprintf".
"Es soll nachher eine Spalte stehen" ist mir nicht klar. Heißt das, dass Du einen Splatenvektor bekommen möchtest, dessen Name "Zeit" lautet?
Gruß, Jan
|
|
|
|
|
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 - 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.
|
|