필터 지우기
필터 지우기

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

조회 수: 2 (최근 30일)
Novice Geek
Novice Geek 2014년 2월 13일
댓글: Novice Geek 2014년 2월 13일
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.

채택된 답변

Andrei Bobrov
Andrei Bobrov 2014년 2월 13일
편집: Andrei Bobrov 2014년 2월 13일
f = fopen('yourtextfile.txt');
c = textscan(f,'%d %d %f','HeaderLines',10,'CollectOutput',1);
fclose(f);
out = accumarray(c{1}+1,c{2});
  댓글 수: 3
Andrei Bobrov
Andrei Bobrov 2014년 2월 13일
Sorry, my typo, corrected.
Novice Geek
Novice Geek 2014년 2월 13일
It works now ! :)

댓글을 달려면 로그인하십시오.

추가 답변 (0개)

카테고리

Help CenterFile Exchange에서 Read, Write, and Modify Image에 대해 자세히 알아보기

제품

Community Treasure Hunt

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

Start Hunting!

Translated by