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,List[4,62]]]

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

Thank you

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? – Szabolcs Mar 2 '14 at 14:48
• @Szabolcs Heh, why not indeed! :) I'll add it in. – rm -rf Mar 2 '14 at 14:51
• While we´re at it, why not m[]? – Yves Klett Mar 2 '14 at 18:09