Matlab - HELP... Como hago para convertir un archivos desde un .txt a Numericos ??

 
Vista:

HELP... Como hago para convertir un archivos desde un .txt a Numericos ??

Publicado por JOSE CARABALLO (3 intervenciones) el 28/06/2011 11:48:11
Hola, a ver si me pueden ayudar. Tengo un problema, estoy tratando de convertir un archivo de texto empleando la funcion textread, seguidamente quiero transformar el vector que surje en un valor numerico pero me da errores empleando el str2num. a ver si me pueden dar una idea diferente que resulte.


[F1,V1,ANG1]=textread('MOROCHAS.txt','%s %s %s');
[F2,V2,ANG2]=textread('BUENAVISTA.txt','%s %s %s');

V1=(V1(:,1));
ANGV1=ANG1(:,1);

V2=V2(:,1);
ANGV2=ANG2(:,1);




primeros numeros del formato de texto....
-0,099 0,8812 -88,444
-0,098 0,8812 -88,444
-0,097 0,8812 -88,444
-0,096 0,8812 -88,444
-0,095 0,8812 -88,444
-0,094 0,8812 -88,444
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

HELP... Como hago para convertir un archivos desde un .txt a Numericos ??

Publicado por JOSE JEREMIAS CABALLERO (5917 intervenciones) el 28/06/2011 17:30:50
Hola Jose.
archivo de texto importandodatatxt5.txt
-0,099 0,8812 -88,444
-0,098 0,8812 -88,444
-0,097 0,8812 -88,444
-0,096 0,8812 -88,444
-0,095 0,8812 -88,444
-0,094 0,8812 -88,444

PROGRAMA EN MATLAB
%===================================
clear all,clc
[F1,V1,ANG1]=textread('importandodatatxt5.txt','%s %s %s');
A=[F1,V1,ANG1];
[f,c]=size(A);
for i=1:c
T=cell2mat(A(:,i)); % convierte cell a mat
v=find(T==','); %detecta los elementos coma(,) en F1
T(v)='.'; % cambia la coma(,) por punto(.)
B(:,i)=str2num(T); % convierte F1 a valor numerico
end
F1=B(:,1)
V1=B(:,2)
ANG1V1=B(:,3)
%=======================================

EJECUCION.
>> importandodatatxt5
F1 =

-0.0990
-0.0980
-0.0970
-0.0960
-0.0950
-0.0940


V1 =

0.8812
0.8812
0.8812
0.8812
0.8812
0.8812


ANG1V1 =

-88.4440
-88.4440
-88.4440
-88.4440
-88.4440
-88.4440


OTRA OPCION
o puedes abrir tu archivo de texto con el editor de bloc de notas y ir a la opcion: Edicion- Reemplezar y te va a salir una ventana: alli en la opcion de buscar: digitas el simbolo coma(,) y en la opcion de reemplazar digitas (.) y haces clic en reemplazar todo y lo guardas tu archivo y tu archivo de texto se quedará como sigue:

archivo de texto importandodatatxt51.txt
-0.099 0.8812 -88.444
-0.098 0.8812 -88.444
-0.097 0.8812 -88.444
-0.096 0.8812 -88.444
-0.095 0.8812 -88.444
-0.094 0.8812 -88.444

%===================================
%AHORA EL PROGRAMA EN MATLAB PARA IMPORTAR SERÁ
clear all
[F1,V1,ANG1]=textread('importandodatatxt51.txt','%f %f %f')
F1=F(:,1)
V1=V(:,1)
NG1V1=ANG1B(:,1)
%================================

EJECUCION
>> importandodatatxt51
F1 =
-0.0990
-0.0980
-0.0970
-0.0960
-0.0950
-0.0940


V1 =
0.8812
0.8812
0.8812
0.8812
0.8812
0.8812


NG1V1 =
-88.4440
-88.4440
-88.4440
-88.4440
-88.4440
-88.4440


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