It's a long-standing gotcha which amounts to MatrixForm
being (arguably) badly designed. If one uses e.g. InputForm
or FullForm
then the formatting is applied and the wrapper disappears. The MatrixForm
wrapper alas does not disappear. So instead of a rectangular list of lists, the structure is MatrixForm[list-of-lists]
.
Maybe this rewriting of your example will help to clarify. (For display purposes I converted the Out[1] cell to InputForm
so it would avoid showing a mess of linear syntax.)
In[1]:= e1 = MatrixForm[{{0.2, 0.1, 0.1}, {0.1, 0.2, 0.2}, {0.1, 0.1, 0.3}}]
(* Out[1]//MatrixForm= MatrixForm[{{0.2, 0.1, 0.1}, {0.1, 0.2, 0.2}, {0.1, 0.1, 0.3}}] *)
In[2]:= MatrixQ[e1]
(* Out[2]= False *)
In[4]:= {Head[e1], MatrixQ[e1[[1]]]}
(* Out[4]= {MatrixForm, True} *)