Filter löschen
Filter löschen

How to read data from txt file and to create a 2D matrix?

2 Ansichten (letzte 30 Tage)
Novice Geek
Novice Geek am 13 Feb. 2014
Kommentiert: Novice Geek am 13 Feb. 2014
I am writing a function which reads a text file with some header information in the first 10 lines and then the actual data starts. Here is how the file looks:
Line 1 to
.....
Line 10 (header information)
0 0 4.169080e+000
1 0 6.391669e+000
2 0 6.391669e+000
.
.
.
511 0 9.922547e+000
0 1 5.268026e+000
1 1 5.268026e+000
.
.
.
511 511 9.922547e+000
I have extracted information from the lines which are part of the header. Line 11 onwards the line format is:
x y value
I want to read all these lines one by one (line 11 onwards) and form a 2D matrix(dimensions: 511 X 511) of the value column so that later I can generate an image using this (basically using squeeze() and imshow() functions). Can someone help me how I organize this in a matrix? I am trying to use a yLoop and a nested xLoop but it is not working.

Akzeptierte Antwort

Andrei Bobrov
Andrei Bobrov am 13 Feb. 2014
Bearbeitet: Andrei Bobrov am 13 Feb. 2014
f = fopen('yourtextfile.txt');
c = textscan(f,'%d %d %f','HeaderLines',10,'CollectOutput',1);
fclose(f);
out = accumarray(c{1}+1,c{2});
  3 Kommentare
Andrei Bobrov
Andrei Bobrov am 13 Feb. 2014
Sorry, my typo, corrected.

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu Read, Write, and Modify Image finden Sie in Help Center und File Exchange

Produkte

Community Treasure Hunt

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

Start Hunting!

Translated by