# How can you convert a matrix back into a list of lists?

It is very simple in Mathematica to convert a list of lists into a matrix: all you need to do is apply the //MatrixForm function to it and voila.

Is it possible to do the reverse though? I have a matrix that I want to convert back into a list of lists, so as to manipulate its elements more easily. Is this possible? Is there a 'ListForm' function that deletes all MatrixForms from the element in question?

As an example, here is the FullForm for one of my elements: MatrixForm[List[List[63],List[4,62]]]

Is there a function which would take this as input and return simply List[List[63],List[4,62]]?

Thank you

• You should go through this section of the documentation. The things covered there are essential for using Mathematica, and will also answer your question. Commented Mar 2, 2014 at 14:53
• possible duplicate of Why does MatrixForm affect calculations? Commented Mar 2, 2014 at 14:57
• Link to W Community version Commented Mar 2, 2014 at 15:47
• another approach to maintaining your underlying data structure but still using MatrixForm for display is to enclose in brackets ()s e.g. (x={{1,2,3},{4,5,6}})//MatrixForm. Commented Mar 2, 2014 at 21:54

I'll start with the standard warning: MatrixForm is just a wrapper that makes your matrices look pretty. Nothing more, nothing less. It does not "convert" a list of lists to a matrix. Your list of lists is already a matrix:

m = Identity@10;
MatrixQ@m
(* True *)


Using MatrixForm wrapped matrices in calculations will only give you an error. Use it only for typesetting/display purposes.

To answer your specific question, if you have a MatrixForm wrapped around it for whatever reason, you can remove the wrapper in one of the following ways:

First@m (* or *)
Identity @@ m (* or *)
m /. MatrixForm[x_] :> x


which will give you back the list of lists.

• Why not First? Commented Mar 2, 2014 at 14:48
• @Szabolcs Heh, why not indeed! :) I'll add it in.
– rm -rf
Commented Mar 2, 2014 at 14:51
• While we´re at it, why not m[[1]]? Commented Mar 2, 2014 at 18:09