Convert a matrix to a 1 dimensional array

Alos picture Alos · Sep 29, 2010 · Viewed 236.7k times · Source

I have a matrix (32X48).

How can I convert the matrix into a single dimensional array?

Answer

Spacedman picture Spacedman · Sep 29, 2010

Either read it in with 'scan', or just do as.vector() on the matrix. You might want to transpose the matrix first if you want it by rows or columns.

> m=matrix(1:12,3,4)
> m
     [,1] [,2] [,3] [,4]
[1,]    1    4    7   10
[2,]    2    5    8   11
[3,]    3    6    9   12
> as.vector(m)
 [1]  1  2  3  4  5  6  7  8  9 10 11 12
> as.vector(t(m))
 [1]  1  4  7 10  2  5  8 11  3  6  9 12