hfisch
hfisch

Reputation: 1332

Single-Column Matrix Indexing

So I've got a .tcl file with data representing a large three-dimensional matrix, and all values associated with the matrix appended in a single column, like this:

128 128 512
3.2867
4.0731
5.2104
4.114
2.6472
1.0059
0.68474
...

If I load the file into the command window and whos the variable, I have this:

 whos K
  Name            Size                Bytes  Class     Attributes

  K         8388810x3             201331440  double     

The two additional columns seem to be filled with NaNs, which don't appear in the original file. Is this a standard way for MATLAB to store a three-dimensional matrix? I'm more familiar with the .mat way of storing a matrix, and I'm curious if there's a quick command I can run to revert it to a more friendly format.

Upvotes: 1

Views: 118

Answers (1)

chappjc
chappjc

Reputation: 30579

The file's first line (128 128 512) gives it 3 columns. I don't know why there are 2so many extra rows (128*128*512 = 8388608), but your 3d matrix can probably be constructed like this:

N = 128*128*512;
mat = reshape(tab(2:N+1,1),[128 128 512]);

What's on the last hundred lines of the table that gets loaded?

Upvotes: 1

Related Questions