Verfasst am: 18.05.2011, 12:13
Titel: Hilfe: suchen von bestimmten.asc in iner filelist mit *.asc
hallo leute,
bin ein absoluter MatLab-Neuling und brauche eure Hilfe ich habe eine matrix A mit einer Spalte und 10 Zeilen und eine filelist mit (456x1 struct) jede der Zellen sind .asc Dateien die werte in meiner Matrix sind gleichzeitig in meiner filelist als .asc dateien zu finden nun möchte ich die 10 werte aus meiner Matrix A in meiner filelist finden und den Inhalt dieser *.asc in eine neue Matrix C (jede asc als zeilenvektor-> also eine Matrix mit 10 Zeilen und z Spalten) einlesen ....
filelist=dir([DirMessungen,'*.asc']); %Inhalt des Ordners bestimmen
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%Lade Excel Übersichtsdatei
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
[type,sheetname] = xlsfinfo(Excelfile); %Bestimme Namen der Sheets
%Filterung von Excel Sheets
SIndex = logical(zeros(length(sheetname(1,:)),1));
if(FilterESheets) fprintf('[Warnung] Filterung nach Sheets aktiviert. Kein Erkennen fehlender Datensätze möglich.\n');
for i=1:length(ExcelSheets) %Mehrere Sheets filtern
SIndex= SIndex | strcmp(char(sheetname{1,:}),ExcelSheets(i,:));
fprintf('[Info] Filterung nach Sheet: "%s".\n',ExcelSheets{i});
end
sheetname=sheetname(SIndex);
end
if(m==0) fprintf('[Fehler] Keine Daten in der Excel-Übersicht vorhanden. Kontrollieren Sie die Sheet-Filterung. Abbruch.\n');
return;
end
dsnumber=[];
dstext=[];
for i=1:m %Mehrere Sheets in eine Matrix!
Sheet = char(sheetname(1,i)) ;
[dsnumberadd, dstextadd] = xlsread(Excelfile, Sheet);
dstextadd(1,:)=[]; %entferne 1. Zeile(Bezeichnubg der Spalten) % dstextadd=dstextadd(2:length(dstextadd),Smile; %entferne 1. Zeile (Bezeichnung der Spalten)
dsnumber=[dsnumber;dsnumberadd];
dstext=[dstext;dstextadd];
end
dsnumberneu=dsnumber(1:10,1); %im dsnummerneu sind die z.b. 10 Messungnummern die ich haben möchte und aus der exceltabelle entnommen sind%
danach weiß ich nicht weiter wie ich jetzt genau die zehn messungnummern aus meiner filelist oben finde und dann den Inhalt in eine neue matrix schreiben kann
ich hoffe dass es verständlich ist
danke im Voraus
danach weiß ich nicht weiter wie ich jetzt genau die zehn messungnummern aus meiner filelist oben finde und dann den Inhalt in eine neue matrix schreiben kann
Das ist unklar. Welche "10 Messungsnummern"? Welchen "Inhalt" in welche neue Matrix??
Hallo Jan zunächstmal danke
Also wenn man dsnumberneu eingibt erhält man als Ergebnis einen vektor/matrix (mit zehn zeilen)
dsnumberneu=
123456
385606
.....
und gleichzeitig sind die Einträge in dsnumberneu auch in filelist vorhanden und zwar in form von 1x1 struct und namen 123456.asc... . Aber in filelist sind tausende .asc Dateien. Mein Problem ist, dass ich zuerst mal die ausgewählten zehn messnummern die sich in dsnumberneu befinden in filelist zu finden und dann dessen Inhalt in eine neue matrix einzulesen aber alle zehn .asc sollen in eine matrix zb
matrixneu=
(123456.asc->inhalt) 1 3 6 88 09 88.....
(385606.asc->inhalt) 2 5 8 99 26 76.....
......
matrixneu hat zehn zeilen und x spalten (zehn zeilen wegen den zehn messnummern und die spalten stehen für verschiedene messergebnisse bzw untersuchten variablen)
gruß X?
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
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.