[Numpy-discussion] Remove duplicate columns
T J
tjhnson at gmail.com
Thu May 6 16:37:25 EDT 2010
On Thu, May 6, 2010 at 10:34 AM, Keith Goodman <kwgoodman at gmail.com> wrote:
> On Thu, May 6, 2010 at 10:25 AM, T J <tjhnson at gmail.com> wrote:
>> Hi,
>>
>> Is there a way to sort the columns in an array? I need to sort it so
>> that I can easily go through and keep only the unique columns.
>> ndarray.sort(axis=1) doesn't do what I want as it destroys the
>> relative ordering between the various columns. For example, I would
>> like:
>>
>> [[2,1,3],
>> [3,5,1],
>> [0,3,1]]
>>
>> to go to:
>>
>> [[1,2,3],
>> [5,3,1],
>> [3,0,1]]
>>
>> (swap the first and second columns). So I want to treat the columns
>> as objects and sort them. I can do this if I convert to a python
>> list, but I was hoping to avoid doing that because I ultimately need
>> to do element-wise bitwise operations.
>
> Assuming you want to sort columns by the values in the first row:
>
Not quite. I want the columns treated as objects...not as the first
element in the column. A better example:
>>> x
array([[3, 2, 2, 2, 2],
[2, 2, 0, 2, 2],
[0, 1, 1, 0, 1],
[5, 5, 3, 0, 5]])
>>> desired
array([[2, 2, 2, 2, 3],
[0, 2, 2, 2, 2],
[1, 0, 1, 1, 0],
[3, 0, 5, 5, 5]])
>>> what_is_really_desired
array([0,1,2,3]) # signifying unique columns
More information about the NumPy-Discussion
mailing list