Matlab - Cómo leer varios archivos en un mismo script y borrarle las primeras líneas

 
Vista:
sin imagen de perfil
Val: 5
Ha aumentado su posición en 17 puestos en Matlab (en relación al último mes)
Gráfica de Matlab

Cómo leer varios archivos en un mismo script y borrarle las primeras líneas

Publicado por Leticia (3 intervenciones) el 04/10/2018 16:55:38
Hola!

Tengo un conjunto de archivos con el mismo formato. Pueden visualizarse desde gedit (en linux) aunque no son .txt
Todos ellos poseen entre 51 y 52 líneas de datos. Quiero poder eliminar las primeras líneas (depende cada archivo, son 23 ó 24), lo que tienen en común es que comienzan todas con * (más abajo dejo uno de ejemplo).

Es posible hacer un script que me vaya leyendo cada archivo de manera sistemática y elimine las líneas que comienzan con * ???

Desde ya muchas gracias!!

* **************************************************
* NETWORK : G
* STATION : PEL
* LOCATION :
* CHANNEL : BH1
* CREATED : 2018-04-26T13:45:29.004956Z
* START : 1995-10-04T00:00:00.000000Z
* END : 2008-12-16T23:59:59.000000Z
* DESCRIPTION : Peldehue, Chile
* LATITUDE : -33.143607
* LONGITUDE : -70.67494
* ELEVATION : 700.0
* DEPTH : 0.0
* DIP (SEED) : 0.0
* AZIMUTH : 6.4
* SAMPLE RATE : 20.0
* INPUT UNIT : M
* OUTPUT UNIT : COUNTS
* INSTTYPE : STS1
* INSTGAIN : 2282.0 (M/S)
* SENSITIVITY : 233677000.0 (M/S)
* A0 : 100.295
* **************************************************
ZEROS 3
+0.000000e+00 +0.000000e+00
+0.000000e+00 +0.000000e+00
+0.000000e+00 +0.000000e+00
POLES 4
-1.963890e-03 +1.964480e-03
-1.963890e-03 -1.964480e-03
-6.235000e+00 +7.818230e+00
-6.235000e+00 -7.818230e+00
CONSTANT 2.343663e+10
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 JOSE JEREMIAS CABALLERO
Val: 6.975
Oro
Ha mantenido su posición en Matlab (en relación al último mes)
Gráfica de Matlab

Cómo leer varios archivos en un mismo script y borrarle las primeras líneas

Publicado por JOSE JEREMIAS CABALLERO (5917 intervenciones) el 04/10/2018 17:55:08
1
2
3
4
5
6
7
8
9
10
11
12
clear all
fid1=fopen('eliminacion_de_lineas.txt','r');
fid2=fopen('eliminacion_de_lineas1.txt','w');
while ~feof(fid1)
linea = fgetl(fid1);
    if linea(1)~='*'
        fprintf(fid2,'%s\n',linea);
    end
end
fclose(fid2);
fclose(fid1);
open('eliminacion_de_lineas1.txt')


Saludos
JOSE JEREMIAS CABALLERO
Asesor de Proyectos con Matlab
Asesoría online Matlab
Servicios de programación matlab



http://matlabcaballero.blogspot.com
https://www.facebook.com/matlabcaballero
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
sin imagen de perfil
Val: 5
Ha aumentado su posición en 17 puestos en Matlab (en relación al último mes)
Gráfica de Matlab

Cómo leer varios archivos en un mismo script y borrarle las primeras líneas

Publicado por Leticia (3 intervenciones) el 05/10/2018 14:24:53
Muchas gracias!!
Y hay alguna forma de hacerlo sistemáticamente?? Es decir, con un mismo script recorrer todos los archivos que haya con ese formato en la misma carpeta.
Existe alguna forma en Matlab de recorrer una serie de archivos con el mismo formato de nombre?? Por ejemplo:
SACPZ.II.NNA.00.BHE
SACPZ.II.NNA.00.BHN
SACPZ.II.NNA.00.BHZ

Gracias!
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
Imágen de perfil de JOSE JEREMIAS CABALLERO
Val: 6.975
Oro
Ha mantenido su posición en Matlab (en relación al último mes)
Gráfica de Matlab

Cómo leer varios archivos en un mismo script y borrarle las primeras líneas

Publicado por JOSE JEREMIAS CABALLERO (5917 intervenciones) el 05/10/2018 15:03:57
Podría subir 4 archivos de sus archivos .
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
sin imagen de perfil
Val: 5
Ha aumentado su posición en 17 puestos en Matlab (en relación al último mes)
Gráfica de Matlab

Cómo leer varios archivos en un mismo script y borrarle las primeras líneas

Publicado por Leticia (3 intervenciones) el 05/10/2018 15:18:15
Si. Acá van de ejemplo
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
Imágen de perfil de JOSE JEREMIAS CABALLERO
Val: 6.975
Oro
Ha mantenido su posición en Matlab (en relación al último mes)
Gráfica de Matlab

Cómo leer varios archivos en un mismo script y borrarle las primeras líneas

Publicado por JOSE JEREMIAS CABALLERO (5917 intervenciones) el 05/10/2018 16:32:36
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
clear all
a=dir('SACPZ*');
for i=1:size(a,1)
fid1=fopen(a(i).name,'r');
fid2=fopen(['modificado.',a(i).name],'w');
while ~feof(fid1)
linea = fgetl(fid1);
if ~isempty(linea)
    if linea(1)~='*'
        fprintf(fid2,'%s\n',linea);
    end
else
    break;
end
end
end
fclose(fid2);
fclose(fid1);

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
>> pwd
ans =
    'C:\Users\DELI\IRISDMC'
 
>> dir
 
.                                  SACPZ.IU.PAYG.00.BH1               SACPZ.YH.G10.--.BHZ
..                                 SACPZ.YH.G03.--.BHN                lear_datos_en_forma_sistematica.m
SACPZ.IU.LVC.00.BHE                SACPZ.YH.G08.--.BHE
 
>> lear_datos_en_forma_sistematica
>> dir
 
.                                  SACPZ.YH.G08.--.BHE                modificado.SACPZ.YH.G03.--.BHN
..                                 SACPZ.YH.G10.--.BHZ                modificado.SACPZ.YH.G08.--.BHE
SACPZ.IU.LVC.00.BHE                lear_datos_en_forma_sistematica.m  modificado.SACPZ.YH.G10.--.BHZ
SACPZ.IU.PAYG.00.BH1               modificado.SACPZ.IU.LVC.00.BHE
SACPZ.YH.G03.--.BHN                modificado.SACPZ.IU.PAYG.00.BH1



Saludos
JOSE JEREMIAS CABALLERO
Asesor de Proyectos con Matlab
Asesoría online Matlab
Servicios de programación matlab


http://matlabcaballero.blogspot.com
https://www.facebook.com/matlabcaballero
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