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

Einlesen von .mat Dateien aus n Ordnern

 

chortik
Forum-Anfänger

Forum-Anfänger


Beiträge: 20
Anmeldedatum: 14.04.09
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 11.09.2012, 21:57     Titel: Einlesen von .mat Dateien aus n Ordnern
  Antworten mit Zitat      
Hallo ich habe folgendes Problem und hoffe ihr könnt mir weiterhelfen:

Ich muss in nächster Zukunft eine Versuchsreihe durchführen (Versuchsteilnehmerzahl noch unbekannt). Pro Teilnehmer wird ein Ordner erzeugt (ID0, ID1, ID2,...). In diesem ordner werden 20 .mat files abgelegt

Ich will nun alle .mat files automatisiert einlesen und am besten pro Proband darstellen

z.B. daten01, daten02, daten 03, ...

momentan schaff ich nur die Daten pro Ordner einzulesen.


clear all
clc
pfad = 'F:\Test\MatLabDaten vom Server\ID01';
liste = dir(fullfile(pfad,'*.*t'));
files = {liste.name};

daten = cell(size(files));

for k=1:numel(files)
% einlesen der Dateien
daten{k} = load(fullfile(pfad,files{k}));
end



Ich hoffe ihr könnt mir da weiterhelfen
Private Nachricht senden Benutzer-Profile anzeigen


Vito
Forum-Guru

Forum-Guru


Beiträge: 315
Anmeldedatum: 02.11.09
Wohnort: Stuttgart
Version: ---
     Beitrag Verfasst am: 12.09.2012, 14:31     Titel:
  Antworten mit Zitat      
Hi,

damit sollte es funktionieren Smile
Code:

function [fileList, fileLoad] = getAllFiles(dirName)    
dirData = dir(dirName);                                 %# Get the data for the current directory  
dirIndex = [dirData.isdir];                             %# Find the index for directories  
fileList = {dirData(~dirIndex).name}';                  %'# Get a list of the files  
if ~isempty(fileList)    
    fileList = cellfun(@(x) fullfile(dirName,x),...     %# Prepend path to files                      
        fileList,'UniformOutput',false);  
end
subDirs = {dirData(dirIndex).name};                     %# Get a list of the subdirectories
validIndex = ~ismember(subDirs,{'.','..'});             %# Find index of subdirectories that are not '.' or '..'  
for iDir = find(validIndex)                             %# Loop over valid subdirectories    
    nextDir = fullfile(dirName,subDirs{iDir});          %# Get the subdirectory path    
    fileList = [fileList; getAllFiles(nextDir)];        %# Recursively call getAllFiles  
end

for krun=1:length(fileList)
    fileLoad{krun}=load(char(fileList(krun)));
end
end

% Aufruf
[fileList, fileLoad] = getAllFiles('C:\Hauptordner')
 

Gruß,
Vito
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.