numpy.asfortranarray — NumPy v2.2 Manual (original) (raw)
numpy.asfortranarray(a, dtype=None, *, like=None)#
Return an array (ndim >= 1) laid out in Fortran order in memory.
Parameters:
aarray_like
Input array.
dtypestr or dtype object, optional
By default, the data-type is inferred from the input data.
likearray_like, optional
Reference object to allow the creation of arrays which are not NumPy arrays. If an array-like passed in as like
supports the __array_function__
protocol, the result will be defined by it. In this case, it ensures the creation of an array object compatible with that passed in via this argument.
New in version 1.20.0.
Returns:
outndarray
The input a in Fortran, or column-major, order.
See also
Convert input to a contiguous (C order) array.
Convert input to an ndarray with either row or column-major memory order.
Return an ndarray that satisfies requirements.
Information about the memory layout of the array.
Examples
Starting with a C-contiguous array:
import numpy as np x = np.ones((2, 3), order='C') x.flags['C_CONTIGUOUS'] True
Calling asfortranarray
makes a Fortran-contiguous copy:
y = np.asfortranarray(x) y.flags['F_CONTIGUOUS'] True np.may_share_memory(x, y) False
Now, starting with a Fortran-contiguous array:
x = np.ones((2, 3), order='F') x.flags['F_CONTIGUOUS'] True
Then, calling asfortranarray
returns the same object:
y = np.asfortranarray(x) x is y True
Note: This function returns an array with at least one-dimension (1-d) so it will not preserve 0-d arrays.