python numpy reshape 详解

2019-11-26 16:29:46 浏览数 (1)

本文由腾讯云 社区自动同步,原文地址 https://stackoverflow.club/article/python_reshape/

按行reshape order=’C’

按列reshape order=’F’

代码语言:txt复制
temp = np.array([[1,2,3],[4,5,6]])
temp
# array([[1, 2, 3],
#       [4, 5, 6]])
temp.reshape((3,2))
# array([[1, 2],
#       [3, 4],
#       [5, 6]])
temp.reshape((3,2),'F')
# Traceback (most recent call last):
#   File "<stdin>", line 1, in <module>
# TypeError: 'tuple' object cannot be interpreted as an integer
temp.reshape((3,2),order='F')
# array([[1, 5],
#       [4, 3],
#       [2, 6]])
temp.reshape((3,2),order='A')
# array([[1, 2],
#      [3, 4],
#       [5, 6]])

reshape(a, newshape, order=’C’)

代码语言:txt复制
Gives a new shape to an array without changing its data.
代码语言:txt复制
Parameters
----------
a : array_like
    Array to be reshaped.
newshape : int or tuple of ints
    The new shape should be compatible with the original shape. If
    an integer, then the result will be a 1-D array of that length.
    One shape dimension can be -1. In this case, the value is
    inferred from the length of the array and remaining dimensions.
order : {'C', 'F', 'A'}, optional
    Read the elements of `a` using this index order, and place the
    elements into the reshaped array using this index order.  'C'
    means to read / write the elements using C-like index order,
    with the last axis index changing fastest, back to the first
    axis index changing slowest. 'F' means to read / write the
    elements using Fortran-like index order, with the first index
    changing fastest, and the last index changing slowest. Note that
    the 'C' and 'F' options take no account of the memory layout of
    the underlying array, and only refer to the order of indexing.
    'A' means to read / write the elements in Fortran-like index
    order if `a` is Fortran *contiguous* in memory, C-like order
    otherwise.

0 人点赞