numpy 学习汇总39- 翻转数组( 初步学习 tcy)
发布日期:2021-06-29 14:47:51 浏览次数:3 分类:技术文章

本文共 3360 字,大约阅读时间需要 11 分钟。

翻转数组  2018/11/29    ======================================================================函数              描述transpose       对换数组的维度ndarray.T       和 self.transpose() 相同rollaxis        向后滚动指定的轴swapaxes        对换数组的两个轴    =======================================================================1.转置np.transpose(a, axes=None)#是重塑一种特殊形式,返回据数据的视图     # 无参数:反转轴的顺序;对于a.shape=(2, 3)的数组必须是无参数. (i,j)参数类似轴i,j互换    # 实例1:                   # 对于一维数组,这不起作用;a=np.arange(6).reshape(2,3) # array([[0, 1, 2],[3, 4, 5]])a.T                         # array([[0, 3], [1, 4], [2, 5]])a.transpose()               # array([[0, 3],[1, 4],[2, 5]])  # a.transpose(0)# 错误    # 实例2:                  #对于高维数组, transpose需要一组轴编号:a.transpose(0,1,2)            # a0.shape# (2, 2, 3) 原形状(2, 2, 3)    =======================================================================2.numpy.rollaxis(arr, axis, start) #向后滚动特定的轴到一个特定位置# 参数说明:#     axis:要向后滚动的轴,其它轴的相对位置不会改变#     start:默认为零,表示完整的滚动。会滚动到特定位置。    # 实例1a = np.arange(6).reshape(2,3)b = np.arange(8).reshape(2,2,2)    np.rollaxis(a,1,0)#0可省略    np.rollaxis(b,2)   # 将轴 2 滚动到轴 0(宽度到深度)np.rollaxis(b,2,1)# 将轴 0 滚动到轴 1(宽度到高度)    # 输出:    a              rollaxis(a,1,0)      b     np.rollaxis(b,2)      rollaxis(b,2,1)    [[0, 1, 2],       [[0, 3],              [[[0 1]           [[[0 2]       [[[0 2]     [3, 4, 5]]        [1, 4],                [2 3]]            [4 6]]        [1 3]]                       [2, 5]]               [[4 5]            [[1 3]        [[4 6]                                              [6 7]]]           [5 7]]]       [5 7]]]    =================================================================3.numpy.swapaxes(arr, axis1, axis2) #用于交换数组的两个轴    # 实例2np.swapaxes(a,1,0)  # np.swapaxes(a,0,1)等价np.swapaxes(b, 2, 0)# 现在交换轴 0(深度方向)到轴 2(宽度方向)# 输出:    a            swapaxes(a,1,0)    b         swapaxes(b, 2, 0)    [[0, 1, 2],       [[0, 3],              [[[0 1]       [[[0 4]     [3, 4, 5]]        [1, 4],                [2 3]]        [2 6]]                       [2, 5]]               [[4 5]        [[1 5]                                              [6 7]]]       [3 7]]]    =================================================================备注:    # 实例3:          #对于高维数组, transpose需要一组轴编号:    aarray([[[0, 1, 2],        [3, 4, 5]],       [[6, 7, 8],        [9, 10, 11]]])    a.transpose(0, 1, 2)  # a0.shape# (2, 2, 3) 原形状(2, 2, 3)array([[[0, 1, 2],        [3, 4, 5]],       [[6, 7, 8],        [9, 10, 11]]])    a.transpose(1, 0, 2)  # a1.shape# (2, 2, 3)原形状(2, 2, 3)array([[[0, 1, 2],        [6, 7, 8]],       [[3, 4, 5],        [9, 10, 11]]])    a.transpose(0, 2, 1)  # a2.shape# (2, 3, 2)原形状(2, 2, 3)    array([[[0, 3],        [1, 4],        [2, 5]],       [[6, 9],        [7, 10],        [8, 11]]])    a.transpose(2, 0, 1)  # a3.shape#(3, 2, 2)原形状(2, 2, 3)array([[[0, 3],        [6, 9]],       [[1, 4],        [7, 10]],       [[2, 5],        [8, 11]]])    a.transpose(1, 2, 0)  # a4.shape#(2, 3, 2)原形状(2, 2, 3)array([[[0, 6],        [1, 7],        [2, 8]],       [[3, 9],        [4, 10],        [5, 11]]])    a.transpose(2, 1, 0)  # a5.shape#(3, 2, 2)原形状(2, 2, 3)array([[[0, 6],        [3, 9]],       [[1, 7],        [4, 10]],       [[2, 8],        [5, 11]]])a.T                   # array([[[ 0,  6], [ 3,  9]],[[ 1,  7],[ 4, 10]], [[ 2,  8],[ 5, 11]]])===================================================================

转载地址:https://chunyou.blog.csdn.net/article/details/84642584 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:numpy 学习汇总40- 修改数组维度( 初步学习 tcy)
下一篇:numpy 学习汇总38- 缺失数据,数据异常,NaN& None的区别( 初步学习 tcy)

发表评论

最新留言

能坚持,总会有不一样的收获!
[***.219.124.196]2024年04月06日 05时02分03秒

关于作者

    喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!

推荐文章