[Numpy-discussion] arr.copy(order='F') doesn't agree with docstring: what is intended behavior?

Kurt Smith kwmsmith@gmail....
Sun Jun 27 12:38:25 CDT 2010


On Sat, Jun 26, 2010 at 7:34 PM, Warren Weckesser
<warren.weckesser@enthought.com> wrote:
> Kurt Smith wrote:
>> I'd really like arr.copy(order='F') to work -- is it supposed to as
>> its docstring says, or is it supposed to raise a TypeError as it does
>> now?
>>
>
> It works for me if I don't use the keyword.  That is,
>
>  >>> b = a.copy('F')

Great!  At least the functionality is there.

>
> But I get the same error if I use order='F', so there is a either a bug
> in the docstring or a bug in the code.

I certainly hope it's a docstring bug and not otherwise.

Any pointers on submitting documentation bugs?

Kurt

>
> Warren
>
>
>> This is on numpy 1.4
>>
>>
>>>>> import numpy as np
>>>>> a = np.arange(10).reshape(5,2)
>>>>> a
>>>>>
>> array([[0, 1],
>>        [2, 3],
>>        [4, 5],
>>        [6, 7],
>>        [8, 9]])
>>
>>>>> print a.copy.__doc__
>>>>>
>> a.copy(order='C')
>>
>>     Return a copy of the array.
>>
>>     Parameters
>>     ----------
>>     order : {'C', 'F', 'A'}, optional
>>         By default, the result is stored in C-contiguous (row-major) order in
>>         memory.  If `order` is `F`, the result has 'Fortran' (column-major)
>>         order.  If order is 'A' ('Any'), then the result has the same order
>>         as the input.
>>
>>     Examples
>>     --------
>>     >>> x = np.array([[1,2,3],[4,5,6]], order='F')
>>
>>     >>> y = x.copy()
>>
>>     >>> x.fill(0)
>>
>>     >>> x
>>     array([[0, 0, 0],
>>            [0, 0, 0]])
>>
>>     >>> y
>>     array([[1, 2, 3],
>>            [4, 5, 6]])
>>
>>     >>> y.flags['C_CONTIGUOUS']
>>     True
>>
>>>>> a.copy(order='C')
>>>>>
>> Traceback (most recent call last):
>>   File "<stdin>", line 1, in <module>
>> TypeError: copy() takes no keyword arguments
>>
>>>>> a.copy(order='F')
>>>>>
>> Traceback (most recent call last):
>>   File "<stdin>", line 1, in <module>
>> TypeError: copy() takes no keyword arguments
>>
>> _______________________________________________
>> 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
>


More information about the NumPy-Discussion mailing list