[Numpy-discussion] How do I make a diagonal matrix?
Travis Oliphant
oliphant at ee.byu.edu
Fri Jun 23 15:19:36 EDT 2006
Alan G Isaac wrote:
>>Alan G Isaac wrote:
>>
>>
>>>Hmm. One would think that diag() would accept a flatiter
>>>object, but it does not. Shouldn't it??
>>>
>>>
>
>
>On Fri, 23 Jun 2006, Travis Oliphant apparently wrote:
>
>
>>It doesn't?
>>try:
>>a = rand(3,4)
>>diag(a.flat).shape
>>
>>
>
>OK, but then try:
>
>
>>>>a=N.mat(a)
>>>>N.diag(a.flat).shape
>>>>
>>>>
>(1,)
>
>Why is a.flat not the same as a.A.flat?
>
>
It is the same object except for the pointer to the underlying array.
When asarray(a.flat) get's called it looks to the underlying array to
get the sub-class and constructs that sub-class (and matrices can never
be 1-d). Thus, it's a "feature"
-Travis
More information about the NumPy-Discussion
mailing list