|
|
probleme beim .txt einlesen mit headerlines |
|
Tschublickl |
Gast
|
 |
Beiträge: ---
|
 |
|
 |
Anmeldedatum: ---
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 26.11.2010, 01:16
Titel: probleme beim .txt einlesen mit headerlines
|
 |
hi leute,
bin mit matlab erst seit einigen tagen beschäftigt, deswegen noch anfänger und muss euch profis mal ne ganz einfache sache fragen, ich sitz jetzt aber echt schon so lang hier dran: auf den folgenden code bin ich gekommen, der klappt auch. meine datei ist eine .txt-datei mit vielen spalten und 2 zeilen. nun möchte ich aber noch 1 headerline der textdatei hinzufügen, aber hier krieg ich das net hin. wie kann ich meinen code MODIFIZIEREN, so dass ich in der textdatei noch zwei überschriften ergänzen kann und es trotzdem noch eingelesen werden kann?
thx
|
|
|
|
|
Jan S |

Moderator
|
 |
Beiträge: 11.057
|
 |
|
 |
Anmeldedatum: 08.07.10
|
 |
|
 |
Wohnort: Heidelberg
|
 |
|
 |
Version: 2009a, 2016b
|
 |
|
|
 |
|
Verfasst am: 26.11.2010, 02:55
Titel: Re: probleme beim .txt einlesen mit headerlines
|
 |
|
 |
|
Hallo Tschublickl,
Ich bin sehr verwirrt. Du möchtest, dass IMPORTDATA eine Zeile als Headerline ignoriert, oder? Dann musst Du in Deinem Code-Beispiel "HEADERLINE" nicht auf 0, sondern auf 1 setzen.
Das wirkt allerdings irgendwie so trivial, dass ich vermute, dass Dein Problem irgendwo anders liegt.
Der Rest der Programms ist merkwürdig: Du definierst "x" und "y", benutzt sie aber gar nicht. "fileToRead1" ist auch ungenutzt.
Dann verschiebst Du die Variablen per ASSIGNIN in den Base-Workspace. Wie bist Du auf die Idee gekommen, gerade diese unsichere und ausgesprochen schwer debugbare Methode der Variablen-Austauschs zu wählen?
Wenn Deine Datein z.B. "return.txt" heisst, macht GENVARNAME daraus die Variable "xReturn". Wieso dann diese Variable im Base-WorkSpace erscheint, läßt sich später kaum nachvollziehen!
Ich empfehle dringend, Variablen ganz normla per Input- und Output-Argument zu übergeben. Schau Dir mal als Beispiel die Funktionen an, die Matlab in seinen Toolboxen ausliefert.
Gruß, Jan
|
|
|
tschublickl |
Gast
|
 |
Beiträge: ---
|
 |
|
 |
Anmeldedatum: ---
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 26.11.2010, 19:08
Titel: einlesen
|
 |
thx erstma für deine antowrt! ja klar, das ist nur ein auszug aus meinem quellcode. die variablen werden später verwendet. auf die idee mit dem
HEADERLINES = 1;
setzen bin auch gekommen, aber es folgt daraufhin die meldung:
Error in ==> b at 9
y=newData1(:,2);
woran liegt das? wie kann ich das umgehen? wenn ich den wert auf 0 setze, dann klappt es logischerweise, warum aber nciht mit ne 1 drin?
mfg
|
|
|
tschublickl |
Gast
|
 |
Beiträge: ---
|
 |
|
 |
Anmeldedatum: ---
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 26.11.2010, 19:13
Titel: einlesen
|
 |
wie kann denn das mit dem
GENVARNAME
umgehen? das hat mir matlab automatisch gemacht bei der importfunktion.
|
|
|
tschublickl |
Gast
|
 |
Beiträge: ---
|
 |
|
 |
Anmeldedatum: ---
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 26.11.2010, 19:27
Titel: einlesen
|
 |
ah, ok das mit dem GENVARNAME wegnehmen klappt nach probierne nun doch... aber das plotten klappt immer ncoh nciht wenn ich eine überschrift habe (trotz HEADERLINES = 1)
warum geht das nciht? wie kann ich den ersten vektor als x definieren, aber ohne dass die "überschrift im wege ist"?
|
|
|
Jan S |

Moderator
|
 |
Beiträge: 11.057
|
 |
|
 |
Anmeldedatum: 08.07.10
|
 |
|
 |
Wohnort: Heidelberg
|
 |
|
 |
Version: 2009a, 2016b
|
 |
|
|
 |
|
Verfasst am: 28.11.2010, 18:34
Titel: Re: einlesen
|
 |
Hallo tschublickl,
Zitat: |
...aber das plotten klappt immer ncoh nciht wenn ich eine überschrift habe (trotz HEADERLINES = 1) |
Dieses Forum kann sehr gut helfen, Probleme zu lösen. Es ist aber nur mäßig gut darin, Probleme zu finden. Deshalb ist es immer eine gute Idee statt "klappt nicht" auch dazu zu schreiben, welche Probleme auftreten: Fehlermeldung? Weichen die Ergebnisse von den Erwartungen ab? Bitte schreibe also noch die Details.
Gruß, Jan
|
|
|
tschublickl |
Gast
|
 |
Beiträge: ---
|
 |
|
 |
Anmeldedatum: ---
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 29.11.2010, 19:54
Titel:
|
 |
ok sorry; dann mach ichs nochmal:
-----------------------------------------------------------------
ich hab eine .txt-datei mit einer überschrift. ich will die werte plotten, ohne berücksichtigung der überschriften.
hier ist mein quellcode:
aber es kommt folgende fehlermeldung:
Zitat: |
??? Index exceeds matrix dimensions.
Error in ==> b at 9
y=newData1(:,2);
|
warum kann ich denn die werte nicht einlesen und plotten, wenn ich überschriften in der textdatei habe?
thx
|
|
|
Jan S |

Moderator
|
 |
Beiträge: 11.057
|
 |
|
 |
Anmeldedatum: 08.07.10
|
 |
|
 |
Wohnort: Heidelberg
|
 |
|
 |
Version: 2009a, 2016b
|
 |
|
|
 |
|
Verfasst am: 29.11.2010, 21:39
Titel:
|
 |
Hallo tschublickl,
Das bedeutet, dass "newData" nur ein Element hat. Und wenn ich die Hilfe von IMPORTDATA lese, wird newData auch höchstwahrscheinlich ein STRUCT sein, oder?!
In solchen Situationen ist der Debugger sehr hilfreich:
Dann stoppt Matlab, wenn ein Fehler auftritt, und Du kannst die Werte und Typen aller Variabelen im CommandWindow oder im WorkSpace Browser untersuchen.
Viel Erfolg, Jan[/i]
|
|
|
|
|
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.
|
|