Matlab - ordenar archivos .txt en un carpeta matlab

   
Vista:

ordenar archivos .txt en un carpeta matlab

Publicado por jhon (8 intervenciones) el 16/02/2016 16:36:19
hola, quisiera solicitarle el favor de ayudarme en este trabajo, de antemano gracias:
me piden clasificar unos documentos tipo .txt respecto a un valor que tiene en su interior (temp).
el problema es que son muchos archivos y no se como hacer un programa que lea todos los archivos .txt para después buscar la variable a evaluar (temp) y hacer como unas condiciones para así ordenarlo.


lista-de-archivos-txt

lo que me han explicado es:
usar textread('direccion del archivo','formato') para que matlab lo lea y lo deje expresado como una cell( o no estoy seguro si es como una matriz) y luego uno escojeria la posicion A(i,j) donde esta la variable a evaluar (temp).
ej:

c=textread('C:\Users\doctorqadovcti\Documents\MATLAB\Histogram_Tests4_DeltaVbias_0.9V\Test_Gain_DeltaVbias_0,9V_histo.txt' ,'%s');
j=c(106,1) %posicion de la variable temp
j=cell2mat(j) % lo convierte a numero


la duda es que los nombres vienen de la siguiente manera: Test1_Gain_DeltaVbia_0.9v_histo.txt , donde lo que cambia en el nombre de los archivos es test1 (el numero) y la gracia seria hacer todo automatico y no colocar una variable c para el test4, la d para test5, la g para test3, y asi sucesivamente ya que son cientos los archivos .txt



entonces pensaria en hacer un ciclo for con n el numero de archivos y recorerlo de manera que este cambiando testn

for n=1:10
c=textread('C:\Users\doctorqadovcti\Documents\MATLAB\Histogram_Tests_DeltaVbias_0.9V\Testn_Gain_DeltaVbias_0,9V_histo.txt' ,'%s');
demas sentencias;
end
pero de esa manera no funciona, al parecer la n en testn no cambia.

por favor ayudenme. gracias.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Daniel

ordenar archivos .txt en un carpeta matlab

Publicado por Daniel (212 intervenciones) el 16/02/2016 17:11:10
prueba lo siguiente

1
2
3
4
5
6
7
8
9
antes='C:\Users\doctorqadovcti\Documents\MATLAB\Histogram_Tests_DeltaVbias_0.9V\Test';
despues='_Gain_DeltaVbias_0,9V_histo.txt';
 
for n=1:10
    archivo=strcat(antes,num2str(n),despues);
    disp(archivo)
 
 
end

Comentanos con te fue

Saludos

Daniel
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar

ordenar archivos .txt en un carpeta matlab

Publicado por jhon (8 intervenciones) el 16/02/2016 17:22:05
si, en cierta manera funciona, pero necesito que quede cada prueba (test) en distintas variables. ya que en el codigo anterior, la variable archivo, queda con el ultimo test (el 10) y no puedo relacionar el test 1 con 3 por ejemplo; de hecho no quedan en si como una variable, sino como un mensaje. eso creo.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

ordenar archivos .txt en un carpeta matlab

Publicado por Miguel González (31 intervenciones) el 17/02/2016 00:28:29
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
clear all
cd ('C:\Users\doctorqadovcti\Documents\MATLAB\Histogram_Tests4_DeltaVbias_0.9V');
files = dir('Test*.txt'); % Leemos archivos solo txt
N = length(files);    % Cuantos archivos se leyeron (N)
for i=1:N
    fid=fopen(files(i).name);
    for j=1:6  % leemos hasta la linea 6 donde está la Temp 
        tline = fgetl(fid);
    end
    Temp(i) = str2double(tline(51:60));  % Temp 0 
    %demas sentencias; 
    fclose(fid);
end
disp (Temp);
 
%Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar

ordenar archivos .txt en un carpeta matlab

Publicado por jhon (8 intervenciones) el 19/02/2016 16:37:27
hola, seria posible que a traves de matlab pasar(mover) archivos (.txt) de una carpeta a otra ???
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar