Matlab - eliminar determinadas columnas en txt

 
Vista:

eliminar determinadas columnas en txt

Publicado por franciscoj (1 intervención) el 08/08/2013 03:55:40
Buenos dias:

Tengo un fichero de texto(pero podria ser cualquier otro), del cual quiero eliminar la primera, la penultima y la ultima columna (el resto de columnas puede variar en cantidad)

Dos ejemplos serian este:

1
2
3
2.500000e+001	  1.603134e-011	  1.057997e-011	  2.012284e-009	  7.892636e-012	     25.000000 1
  4.500000e+001	  1.717972e-011	  1.144459e-011	  2.014400e-009	  9.550909e-012	     45.000000 1
  6.500000e+001	  1.828518e-011	  1.276024e-011	  2.017099e-009	  1.102774e-011	     65.000000 1



y este:

1
2
3
4
1.200000e+000	  6.776297e-012	  7.339473e-012	     25.000000 1
  1.175000e+000	  7.108500e-012	  7.246617e-012	     25.000000 1
  1.150000e+000	  7.391815e-012	  7.093552e-012	     25.000000 1
  1.125000e+000	  7.968235e-012	  6.965860e-012	     25.000000 1



En ambos querria eliminar la primera, penultima y ultima columna.


Añadir que luego voy a exportar esas columnas a excel, por lo que si existe la forma de eliminarlas en excel desde matlab, tambien me valdria.


Saludos y buen foro
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 Jorge De Los Santos
Val: 30
Ha disminuido su posición en 12 puestos en Matlab (en relación al último mes)
Gráfica de Matlab

eliminar determinadas columnas en txt

Publicado por Jorge De Los Santos (213 intervenciones) el 08/08/2013 23:37:15
Hola Francisco...

Supongamos que tenemos un archivo de datos llamado "datos.dat" con la siguiente información distribuida en 5 filas y 4 columnas como se muestra:

1 3.10 100 21
2 2.11 231 77
3 2.54 211 23
4 5.33 321 12
5 8.99 255 82

Primero cargamos el archivo de datos con la instrucción siguiente:

>> load datos.dat

Con ello MATLAB nos creará una matriz de 5x4 llamada "datos".
Para eliminar por ejemplo la 2 y 4 columna simplemente ejecutamos la siguiente orden:

>> datos( : , [2 4])=[ ]

Y Matlab nos devolverá el nuevo arreglo eliminando las columnas que le hemos indicado...

Evidentemente sólo tendrías que adecuar la instrucción para la posición de la columna que quieres eliminar...

Saludos.

Jorge De Los Santos
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