python numpy array转置_NumPy数组的转置和轴对换

在 NumPy 中,利用 transpose()、ndarray.T、rollaxis() 和 swapaxes() 等函数可实现翻转数组的操作。

transpose() 函数

该函数可实现翻转给定数组的维度,并且返回数组的 1 个视图(View)。使用transpose()函数的方法如下:

numpy.transpose(arr)

其中,参数 arr 表示要转置的数组。例如 ar r是一个 3 行 5 列数组,numpy.transpose(arr) 函数就会返回 arr 数组转置为 5 行 3 列的数组视图,而原数组 arr 不改变。

ndarray.T 函数

该函数是属于 ndarray 类,作用类似于 numpy.transpose

rollaxis() 函数

该函数可实现向后滚动特定的轴,直到 1 个特定位置。使用 rollaxis() 函数的方法如下:

numpy.rollaxis(arr,axis,start)

其中,参数 arr 表示数组;axis 表示要向后滚动的轴,其他轴的相对位置不会改变;start 表示滚动到特定位置,默认为零,表示完整的滚动。

swapaxes() 函数

该函数可交换数组的两个轴。NumPy1.10 之前的版本会返回交换后数组的视图。使用 swapaxes() 函数的方法如下:

numpy.swapaxes(arr,axis1,axis2)

其中,参数 arr 表示数组,axis1 表示对应第 1 个轴的整数,axis2 表示对应第 2 个轴的整数。

翻转数组的示例

示例代码 example1 如下。

# -*- coding: UTF-8 -*-

import numpy as np

#创建数组2行5列

arr = np.arange(10).reshape(2,5)

print('原数组:',arr)

#用transpose函数转置

print('转置数组:')

print(np.transpose(arr))

#用ndarray.T转置

print('转置数组:')

print(arr.T)

#用rollaxis函数

arr = np.arange(8).reshape(2,2,2)

print('原数组:',arr)

# 将轴 2 滚动到轴 0(宽度到深度)

print('调用rollaxis函数:')

print(np.rollaxis(arr,2))

# 将轴 0 滚动到轴 1(宽度到高度)

print('调用rollaxis函数:')

print(np.rollaxis(arr,2,1))

#用swapaxes函数

arr = np.arange(8).reshape(2, 2, 2)

print('原数组:',arr)

# 现在交换轴 0(深度方向)到轴 2(宽度方向)

print('调用swapaxes函数后的数组:')

print(np.swapaxes(arr, 2, 0))

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值