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

Mal wieder das Thema Unterordner...

 

koala02
Forum-Newbie

Forum-Newbie


Beiträge: 6
Anmeldedatum: 30.09.09
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 10.11.2009, 13:17     Titel: Mal wieder das Thema Unterordner...
  Antworten mit Zitat      
Hallo zusammen!
Habe folgendes Problem. Habe einen großen Satz an Satellitendaten, der mehrere Jahre umfasst. Die Satellitendaten sind nach ihrem Aufnahmejahr in Unterordern abgespeichert (D:...\Daten\1990, ...\Daten\1991, etc.).
Momentan greife ich auf die Daten wie folgt zu:
Code:
binpath = 'D:\pathname\1990';
liste = (fullfile(binpath,'*.bin'));
files = {liste.name};
for k=1:numel(files)
    binpathfile = fullfile(binpath ,files{yy});
    fid=fopen(binpathfile);  
    if fid~=-1
        head=fread(fid,300,'ubit8'); clear head;
        a=fread(fid,[316 332],'ubit8');
...
 


Ich würde das Skript gerne so umschreiben, dass in der for-Schleife nacheinander auf den jeweiligen Unterordner und dort der Reihe nach auf die Satellitendaten zugegriffen wird. Anstelle von "for k=1:numel(files)..." würde ich dann gerne sowas in der Art stehen haben "for yy=1990:1999 ....". Momentan kann ich halt immer nur ein Jahr analysieren und muss den Pfad danach dann ändern.
Habe mal an "genpath" gedacht, weiß aber nicht so genau, ob das das richtige ist und wie ich das in mein Skript einbaue.
Wäre supi, wenn mir jemand weiterhelfen könnte.

Schonmal DANKE
Private Nachricht senden Benutzer-Profile anzeigen


steve_

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 10.11.2009, 13:40     Titel:
  Antworten mit Zitat      
Code:
binpath = 'D:\pathname';
folderlist = dir(binpath);
% save only names of folders
folderlist = (find(~cellfun(@iszero,{folderlist(:).isdir})));
folder = {folderlist.name};
for l=1:numel(folder)
    currentdir = fullfile(binpath, folder(l));
    liste = dir(fullfile(currentdir, '*.bin'));
    files = {liste.name};
    for k=1:numel(files)
        binpathfile = fullfile(currentdir, files{k});
        fid=fopen(binpathfile);  
        if fid~=-1
            head=fread(fid,300,'ubit8'); clear head;
            a=fread(fid,[316 332],'ubit8');
        ...
 


ungetestet...

Gruß
Alex
 
Gast



Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 10.11.2009, 14:16     Titel:
  Antworten mit Zitat      
Danke für die schnelle Antwort! Super!
Leider erhalte ich folgende Fehlermeldung;
Code:
folderlist = (find(~cellfun(@iszero,{folderlist(:).isdir})));
??? Function name must be a string.
 

Da ich relativer matlab-Anfänger bin, fällt es mir schwer zu beurteilen, wo der fehler liegt...
 
koala02
Themenstarter

Forum-Newbie

Forum-Newbie


Beiträge: 6
Anmeldedatum: 30.09.09
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 10.11.2009, 15:54     Titel:
  Antworten mit Zitat      
Anonymous hat Folgendes geschrieben:
Danke für die schnelle Antwort! Super!
Leider erhalte ich folgende Fehlermeldung;
Code:
folderlist = (find(~cellfun(@iszero,{folderlist(:).isdir})));
??? Function name must be a string.
 

Da ich relativer matlab-Anfänger bin, fällt es mir schwer zu beurteilen, wo der fehler liegt...
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.