Matlab - Eliminar datos matlab

 
Vista:

Eliminar datos matlab

Publicado por JOSE MEDINA (6 intervenciones) el 30/09/2011 20:01:51
Tengo una serie de datos X,Y,Z los cargo en .dat en matlab y quiero eliminar las FILAS que tengan valores mayores a cero en la tercera columna.... entonces lo que hago es lozalizar de ese registro [A] las filas que tienen registros mayores a cero en la tercera columna:

clear all
close all
clc
warning off

%% Leo la serie sin encabezado
A=load('Registro_Playa.dat');

%% Encuentro los valores de la columna 3 (cotas) que son mayores de cero
pos=find(A(:,3)>0)

Una vez localizadas las posiciones quiero eliminar esas posiciones de mi variable A, como lo hago?¿ Se que para eliminar un valor concreto de mi variable es asi:

A(2,:)=[ ];

Eliminaria mi fila 2 de la variable A, pero si quiero eliminar todas las filas que he localizado en "pos=find(A(:,3)>0)" como puedo hacer para dejar limpia A

Gracias, un saludo
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

Eliminar datos matlab

Publicado por JOSE JEREMIAS CABALLERO (5917 intervenciones) el 30/09/2011 20:50:00
Hola Jose.
Al parecer quieres algo asi:
>> A=rand(10,6), pos=find(A(:,3)>0.5), A(pos,:)=[]
A =

0.1057 0.8604 0.9391 0.3479 0.7069 0.0567
0.1420 0.9344 0.3013 0.4460 0.9995 0.5219
0.1665 0.9844 0.2955 0.0542 0.2878 0.3358
0.6210 0.8589 0.3329 0.1771 0.4145 0.1757
0.5737 0.7856 0.4671 0.6628 0.4648 0.2089
0.0521 0.5134 0.6482 0.3308 0.7640 0.9052
0.9312 0.1776 0.0252 0.8985 0.8182 0.6754
0.7287 0.3986 0.8422 0.1182 0.1002 0.4685
0.7378 0.1339 0.5590 0.9884 0.1781 0.9121
0.0634 0.0309 0.8541 0.5400 0.3596 0.1040


pos =

1
6
8
9
10


A =

0.1420 0.9344 0.3013 0.4460 0.9995 0.5219
0.1665 0.9844 0.2955 0.0542 0.2878 0.3358
0.6210 0.8589 0.3329 0.1771 0.4145 0.1757
0.5737 0.7856 0.4671 0.6628 0.4648 0.2089
0.9312 0.1776 0.0252 0.8985 0.8182 0.6754



%elimina la fila 1,6, 8,9,10 de la matriz A


Saludos.
JOSE JEREMIAS CABALLERO
ASESOR DE PROYECTOS CON MATLAB
PROFESOR DE METODOS NUMERICOS CON MATLAB
PROGRAMADOR MATLAB
[email protected]
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

Eliminar datos matlab

Publicado por JOSE MEDINA (6 intervenciones) el 30/09/2011 21:22:34
Muchas gracias perfecto
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

Eliminar datos matlab

Publicado por Enrique (6 intervenciones) el 14/02/2017 16:29:11
Hola, yo tengo un problema parecido, pero al ejecutarlo me sale un error y no se porque. El código es el siguiente:


Captura

El error es ese que indica abajo, y he revisado y creo que es correcto lo que hago. ¿Alguna ayuda ?

Muchas gracias de antemano.
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

Eliminar datos matlab

Publicado por JOSE JEREMIAS CABALLERO (5917 intervenciones) el 14/02/2017 16:40:40
1
2
3
4
5
6
7
8
9
10
11
12
13
clear all
ctex1=round(3*rand(1,10))
ex=length(ctex1);
e=1;
while e<=ex
    if ctex1(e)==0
        ctex1(e)=[];
        ex=length(ctex1);
       continue
    end
    e=e+1;
end
ctex1

1
2
3
4
5
6
7
8
9
10
>> quitar_ceros_repetidos
 
ctex1 =
 
     2     2     2     1     1     3     0     1     2     0
 
 
ctex1 =
 
     2     2     2     1     1     3     1     2


Saludos.
JOSE JEREMIAS CABALLERO
Asesor de Proyectos con 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
1
Comentar
sin imagen de perfil

Eliminar datos matlab

Publicado por Enrique (6 intervenciones) el 14/02/2017 17:01:25
MUchas gracias !! Funciona correctamente !!Ya me estaba volviendo un poco loco porque no encontraba la solución !
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

Eliminar datos matlab

Publicado por Luis (4 intervenciones) el 27/07/2017 16:35:00
Saludos Jose buen aporte yo tengo un caso similiar como puedo eliminar directamente la fila de una base de datos en excel, al momento ya realice la busqueda como se ve en el grafico.. lo que estoy haciendo es solicitar el numero de documento de la persona que se desea borrar y con esto realizo la busqueda
busqueda
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