How to read only the first term on the file.

1 visualizzazione (ultimi 30 giorni)
Hi, I would know if someone can help me with this. In the file I have, I only need to read te first term of the second column, I mean, the total_x number. Anyone know how can I do that?
Thanks
  7 Commenti
Moises Belda
Moises Belda il 31 Mag 2019
No, just only -1.781235e-01. I only need this term of all columns.
Thanks
Moises Belda
Moises Belda il 17 Giu 2019
I again,
Could you help me once more, please. In the previous question I needed the first term of the first row, but instead of that now I need the third term, how could I obtain them? I am a bit lost with all the %f and %s...
Thank you

Accedi per commentare.

Risposta accettata

per isakson
per isakson il 31 Mag 2019
Modificato: per isakson il 31 Mag 2019
Try this
%%
ffs = 'h:\m\cssm\force.dat'; % change to your folder
fid = fopen( ffs, 'r' );
cac = textscan( fid, '%*f%s%*s%*s', 1, 'Headerlines',4, 'Delimiter','\t' );
fclose( fid );
total_x = sscanf( cac{1}{1}, '(%f %*f %*f)' );
and display the value
>> total_x
total_x =
-0.17812
In response to comment
Try this instead
%%
ffs = 'h:\m\cssm\force.dat'; % change to your folder
fid = fopen( ffs, 'r' );
cac = textscan( fid, '%*f%s%*s%*s', inf, 'Headerlines',4, 'Delimiter','\t' );
fclose( fid );
total_x = cellfun( @(chr) sscanf(chr,'(%f %*f %*f)'), cac{1} );
and check the result
>> whos total_x
Name Size Bytes Class Attributes
total_x 190978x1 1527824 double
  7 Commenti
Moises Belda
Moises Belda il 2 Giu 2019
Okay. Now it's working. Thank you very much for your help
Jan
Jan il 3 Giu 2019
If it works, please select this as accepted answer.

Accedi per commentare.

Più risposte (0)

Tag

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by