[Numpy-discussion] How to Keep An Array Two Dimensional
Tom Bennett
tom.bennett@mail.zyzhu....
Sun Nov 25 20:47:18 CST 2012
Thanks for the quick response.
Ah, I see. There is a difference between A[:,:1] and A[:,0]. The former
returns an Mx1 2D array whereas the latter returns an M element 1D array. I
was using A[:,0] in the code but A[:,:1] in the example.
On Sun, Nov 25, 2012 at 8:35 PM, Warren Weckesser <
warren.weckesser@gmail.com> wrote:
>
>
> On Sun, Nov 25, 2012 at 8:24 PM, Tom Bennett <tom.bennett@mail.zyzhu.net>wrote:
>
>> Hi,
>>
>> I am trying to extract n columns from an 2D array and then operate on the
>> extracted columns. Below is the code:
>>
>> A is an MxN 2D array.
>>
>> u = A[:,:n] #extract the first n columns from A
>>
>> B = np.dot(u, u.T) #take outer product.
>>
>> This code works when n>1. However, when n=1, u becomes an 1D array
>> instead of an Mx1 2D array and the code breaks down.
>>
>> I wonder if there is any way to keep u=A[:,:n] an Mxn array no matter
>> what value n takes. I do not want to use matrix because array is more
>> convenient in other places.
>>
>>
> Tom,
>
> Your example works for me:
>
> In [1]: np.__version__
> Out[1]: '1.6.2'
>
> In [2]: A = arange(15).reshape(3,5)
>
> In [3]: A
> Out[3]:
> array([[ 0, 1, 2, 3, 4],
> [ 5, 6, 7, 8, 9],
> [10, 11, 12, 13, 14]])
>
> In [4]: u = A[:,:1]
>
> In [5]: u
> Out[5]:
> array([[ 0],
> [ 5],
> [10]])
>
> In [6]: B = np.dot(u, u.T)
>
> In [7]: B
> Out[7]:
> array([[ 0, 0, 0],
> [ 0, 25, 50],
> [ 0, 50, 100]])
>
>
>
> Warren
>
>
>
>> Thanks,
>> Tom
>>
>>
>>
>> _______________________________________________
>> NumPy-Discussion mailing list
>> NumPy-Discussion@scipy.org
>> http://mail.scipy.org/mailman/listinfo/numpy-discussion
>>
>>
>
> _______________________________________________
> NumPy-Discussion mailing list
> NumPy-Discussion@scipy.org
> http://mail.scipy.org/mailman/listinfo/numpy-discussion
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mail.scipy.org/pipermail/numpy-discussion/attachments/20121125/bd94ba99/attachment.html
More information about the NumPy-Discussion
mailing list