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

Schleife für einl., bearb. und erstellen mehr. txt.dateien

 

Faith

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 13.07.2011, 12:52     Titel: Schleife für einl., bearb. und erstellen mehr. txt.dateien
  Antworten mit Zitat      
Hallo liebe Forummitglieder, ich bin Anfänger und semitalentiert und hoffe Jemand hat irgendeine Hilfestellung für mein Problem:

Ich habe verschiedene Ordner im .txt Format. Nun habe ich einen Code geschrieben, der einen Ordner aufruft mit dlmread und dann aus den Daten neue Variablen berechnet und in eine neue Matrix schreibt. Anschließend wird das ganze mit dlmwrite in eine neue Textdatei geschrieben.

So weit so gut. Nun habe ich aber hunderte dieser Dateien und möchte die ganze Prozedur für jede ausführen. Jede Datei hat einen Namen der Form 1_1_1, 1_1_2.....2_2_15 usw.....

Also brauche ich eine Schleife in der die Textdateien nacheinander aufgerufen werden und eine entsprechende neue Datei passend dazu erstellt wird. Wie mache ich das nun?
So viel ich weiß kann ich ja keinen Pfad mit variablem Namen bestimmen und diesen dann mit dlmread einlesen,oder?
Also klappt meine erste Idee:[/code]x=1:10
y=1:2
z=1:60

pfad= [testordner/'_',num2str(x), '_', num2str(y),'_',num2str(z).txt ]

datei=dlmread('pfad','\t')
Code:
schonmal nicht?

Wie mache ich das nun??? Was ist das passende Mittel? Verzweifel langsam und wäre sooo dankbar! :-)


Ajax
Forum-Century

Forum-Century


Beiträge: 176
Anmeldedatum: 09.09.10
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 13.07.2011, 13:02     Titel:
  Antworten mit Zitat      
Eigentlich sollte das schon klappen. Du hast aber auf jeden Fall in deinem Beispiel ein paar Fehlerchen:
Du musst in deiner pfad -Definition alles als String angeben, und damit das letzte '.txt' ebenfalls als String definieren, also in '...' schrieben. Das gleiche gilt für den Ersten Teil mit testordner. Außerdem glaube ich es sollte \ nach testordner heißen, nicht / und die Kommata brauchst du auch nicht.
Wenn der Pfad als String definiert ist, dann musst du bei dlmread() die Striche '...' weglassen.
Beispiel:
Code:

pfad = ['testordner\' num2str(x) '_' num2str(y) '_' num2str(z) '.txt' ];
test = dlmread(pfad,'\t');
 

mfg
Private Nachricht senden Benutzer-Profile anzeigen
 
Gast



Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 13.07.2011, 13:13     Titel:
  Antworten mit Zitat      
Hey Ajax,

vielen dank für Deine schnelle Antwort. Sorry, das Beispiel ist nicht der tatsächliche Code aus meinem Programm, habe den eben nur schnell hingetippt. Werde mir das nächste mal mehr Mühe geben, versprochen Smile

Aber wenn Du sagt dlmread sollte auf diese Weise funktionieren, habe ich bestimmt auch in meinem richtigen code einen Fehler eingebaut...

Habe immer die Fehlermeldung "The file 'pfad' could not be opened because: No such file or directory bekommen" und dachte, matlab erkennt den pfad eben nicht und sucht nach einer Datei die "Pfad" heisst....mhhhm

Werde es nochmal genauer unter die Lupe nehmen und probieren!
 
Ajax
Forum-Century

Forum-Century


Beiträge: 176
Anmeldedatum: 09.09.10
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 13.07.2011, 13:33     Titel:
  Antworten mit Zitat      
Wenn es an dem Pfad liegt, dann geh einfach in den Ordner, kopiere aus der Adressleiste den korrekten Pfad und füge ihn ein ('C:\...'). Wenn du das so machst, dann darfst du das '\' am Ende des Pfades vor dem Dateinamen nicht vergessen! Dann sollte es eigentlich funktionieren.
mfg
Private Nachricht senden Benutzer-Profile anzeigen
 
Harald
Forum-Meister

Forum-Meister


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

hast du in deinem richtigen Code Hochkommas um pfad gesetzt?
Wenn ja: Hochkommas raus, und es sollte funktionieren.

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.