Ah, I see.  So basically I need to prepend dimensions myself to make this work - makes sense.  <br><br>Might be nice if view could do that automatically, but this is workable.<br><br>Thanks Josef!<br><br><div class="gmail_quote">

On Tue, Aug 30, 2011 at 9:49 PM,  <span dir="ltr"><<a href="mailto:josef.pktd@gmail.com">josef.pktd@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">

<div><div></div><div class="h5">On Tue, Aug 30, 2011 at 4:34 PM, Bryce Ready <<a href="mailto:bryce.ready@gmail.com">bryce.ready@gmail.com</a>> wrote:<br>
> Hello all,<br>
><br>
> So i'm using numpy 1.6.0, and trying to convert a (4,4) numpy array of dtype<br>
> 'f8' into a record array of this dtype:<br>
><br>
>> dt = np.dtype([('mat','(4,4)f8')])<br>
><br>
> Here is the code snippet:<br>
><br>
>> In [21]: a = np.random.randn(4,4)<br>
>><br>
>> In [22]: a.view(dt)<br>
><br>
> and the resulting error:<br>
><br>
>> ValueError: new type not compatible with array.<br>
><br>
> Can anyone shed some light for me on why this conversion is not possible?<br>
> It is certainly technically possible, since the memory layout of the two<br>
> arrays should be the same.<br>
><br>
> Can anyone recommend a better way to do this conversion?<br>
<br>
</div></div>I guess it can only convert rows, each row needs the memory size of the dt<br>
<br>
>>> np.random.randn(4,4).ravel().view(dt).shape<br>
(1,)<br>
>>> np.random.randn(2,4,4).reshape(-1,16).view(dt)<br>
array([[ ([[1.7107996212005496, 0.64334162481360346,<br>
-2.1589367225479004, 1.2302260107072134], [0.90703092017458831,<br>
-1.0297890301610224, -0.095086304368665275, 0.35407366904038495],<br>
[-1.1083969421298907, 0.83307347286837752, 0.39886399402076494,<br>
0.26313136034262563], [0.81860729029038914, -1.1443047382313905,<br>
0.73326737255810859, 0.34482475392499168]],)],<br>
       [ ([[0.69027418489768777, 0.25867753263599164,<br>
1.0320990807184023, 0.21836691513066409], [0.45913017094388614,<br>
-0.89570247025515981, 0.76452726059163534, -2.2953009964941642],<br>
[0.60248580944596275, 1.0863090037733505, -0.10849220482850662,<br>
-0.19176089514256078], [-1.0700600508627109, -1.4743316703511105,<br>
0.79193567523155062, 0.82243321942810521]],)]],<br>
      dtype=[('mat', '<f8', (4, 4))])<br>
<br>
Josef<br>
<div class="im"><br>
><br>
> Thanks in advance!<br>
><br>
> -Bryce Ready<br>
><br>
</div>> _______________________________________________<br>
> NumPy-Discussion mailing list<br>
> <a href="mailto:NumPy-Discussion@scipy.org">NumPy-Discussion@scipy.org</a><br>
> <a href="http://mail.scipy.org/mailman/listinfo/numpy-discussion" target="_blank">http://mail.scipy.org/mailman/listinfo/numpy-discussion</a><br>
><br>
><br>
_______________________________________________<br>
NumPy-Discussion mailing list<br>
<a href="mailto:NumPy-Discussion@scipy.org">NumPy-Discussion@scipy.org</a><br>
<a href="http://mail.scipy.org/mailman/listinfo/numpy-discussion" target="_blank">http://mail.scipy.org/mailman/listinfo/numpy-discussion</a><br>
</blockquote></div><br>