Vectores y matrices
Publicado por Nbb (10 intervenciones) el 21/03/2011 01:10:12
Hola!!!
Mi duda es la siguiente:
mediante la funcion textscan estoy creando vectores extrayendo datos de un string, este string va variando y lo que quiero es ir almacenado ese vector en una matriz. Alguien me podría ayudar, os dejo el cacho de codigo:
A=zeros(puntos,2); %%la variable puntos varia en mi programa
i=1;
fichero=fopen('datos.txt','r ');
while ~feof(fichero)
% Leo línea a línea
linea=fgets(fichero);
%%% La razon de porque utlizo textscan sobre el string linea y no se el fichero directamente, es porque en el medio realizo otras operaciones, pero que para la duda no es necesario
C=textscan(linea,'%f,%f');
A(i,:)=[C{1,1} C{1,2}]
i=i+1;
end
fclose(fichero);
El fichero de texto es algo así: (2 números decimales por línea y separados por coma)
998440321.583179,5.0049311725752
998500309.214595,4.96892044853219
998560296.846011,2.93780207533553
998620284.477427,3.05988436081944
998680272.108844,3.82871077618616
998740259.74026,3.65028568818916
998800247.371676,3.0851206760602
998860235.003092,3.24509302167866
998920222.634508,4.4699067124577
998980210.265925,4.38816660549368
999040197.897341,3.59696778635518
999100185.528757,3.06969283436078
999160173.160173,4.79491662967543
999220160.791589,3.15707094959942
999280148.423006,4.20158021628991
999340136.054422,3.76184436874431
999400123.685838,3.23195630915443
No consigo almacenar los datosde de forma correcta. Me gustaría que cada linea del fichero fuera una fila de la matriz.
Gracias espero que alguien me lo solucione!!
Mi duda es la siguiente:
mediante la funcion textscan estoy creando vectores extrayendo datos de un string, este string va variando y lo que quiero es ir almacenado ese vector en una matriz. Alguien me podría ayudar, os dejo el cacho de codigo:
A=zeros(puntos,2); %%la variable puntos varia en mi programa
i=1;
fichero=fopen('datos.txt','r ');
while ~feof(fichero)
% Leo línea a línea
linea=fgets(fichero);
%%% La razon de porque utlizo textscan sobre el string linea y no se el fichero directamente, es porque en el medio realizo otras operaciones, pero que para la duda no es necesario
C=textscan(linea,'%f,%f');
A(i,:)=[C{1,1} C{1,2}]
i=i+1;
end
fclose(fichero);
El fichero de texto es algo así: (2 números decimales por línea y separados por coma)
998440321.583179,5.0049311725752
998500309.214595,4.96892044853219
998560296.846011,2.93780207533553
998620284.477427,3.05988436081944
998680272.108844,3.82871077618616
998740259.74026,3.65028568818916
998800247.371676,3.0851206760602
998860235.003092,3.24509302167866
998920222.634508,4.4699067124577
998980210.265925,4.38816660549368
999040197.897341,3.59696778635518
999100185.528757,3.06969283436078
999160173.160173,4.79491662967543
999220160.791589,3.15707094959942
999280148.423006,4.20158021628991
999340136.054422,3.76184436874431
999400123.685838,3.23195630915443
No consigo almacenar los datosde de forma correcta. Me gustaría que cada linea del fichero fuera una fila de la matriz.
Gracias espero que alguien me lo solucione!!
Valora esta pregunta
0