ndarray的转置(numpy.transpose()与A.T命令对比分析)
作者:Codefmeister 发布时间:2023-11-13 05:57:27
标签:ndarray,转置,numpy.transpose,A.T命令
ndarray的转置(transpose)
对于A是由np.ndarray
表示的情况:
可以直接使用命令A.T
。
也可以使用命令A.transpose()
。
A.T 与 A.transpose()对比
结论
在默认情况下,两者效果相同,但transpose()
可以指定交换的axis
维度。
对于一维数组,两者均不改变,返回原数组。
对于二维数组,默认进行标准的转置操作。
对于多维数组A
,A.shape
为(a,b,c,d,...,n)
,则转置后的shape
为(n,...,d,c,b,a)
,即逆序。
对于.transpose()
,可以指定转置后的维度。
语法:A.transpose((axisOrder1,...,axisOrderN))
,其效果等同于np.transpose(A,(axisOrder1,...,axisOrderN))
,(axisOrder)
中是想要得到的索引下标顺序。
效果详见例子。
Example
二维默认情况下:
A = np.array([[1,2],[3,4]])
print(A)
print(A.T)
print(A.transpose())
结果如下:
多维默认情况下:
a = np.array([[[1,2,3,4],[4,5,6,7]],[[2,3,4,5],[5,6,7,8]],[[3,4,5,6],[4,5,6,7]]])
print(a.shape)
print(a.T.shape)
print(a.transpose().shape)
结果如下:
指定维度情况:
a = np.array([[[1,2,3,4],[4,5,6,7]],[[2,3,4,5],[5,6,7,8]],[[3,4,5,6],[4,5,6,7]]])
print(a.shape)
print(a.transpose(1,2,0).shape)
A = np.transpose(a,(1,2,0))
print(A.shape)
结果如下:
从截图中可以看出,a.transpose(1,2,0)
与np.transpose(a,(1,2,0))
效果相同。
代码段中给出的axes
是(1,2,0)
,这决定了transpose
后的数组,其shape
在第一个维度即shape[0]
上是原来的shape[1]
,第二维shape[1]
是原来的shape[2]
,第三维shape[2]
是原来的shape[0]
。
所以原shape
为(3,2,4)
。新的shape为(2,4,3)
。
来源:https://blog.csdn.net/weixin_43977640/article/details/109909305


猜你喜欢
- pyqtgraph是Python平台上一种功能强大的2D/3D绘图库,相对于matplotlib库,由于其在内部实现方式上,使用了高速计算的
- 首先学习两个函数1.substring 返回字符、binary、text 或 image 表达式的一部分。基本语法:SUBSTR
- 元组的结构在这一小节当中主要介绍在 python 当中元组的数据结构:typedef struct { PyObj
- 分享一个python脚本,使用代理ip来访问网页,方便抓取数据什么的~并自动验证ip是否可以用什么情况下会用到 * ?比如你要抓取一个网站
- 最近在研究品牌如何演绎,当然,看的时候没有忘记本行,分析了一下他们的交互设计~~路易威登LV上图采用胶片展示多组信息——大片展示品牌渲染。利
- 在工作中。在做数据集时,需要对图片进行处理,照相的图片我们只需要特定的部分,所以就想到裁剪一种所需的部分。当然若是图片有规律可循则使用ope
- 创建游戏文件 2048.py首先导入需要的包:import cursesfrom random import randrange, choi
- 有关pygal的安装,大家可以参阅《pip和pygal的安装实例教程》。直方图:直方图是一个特殊的条,它可以取3个数值:纵坐标高度,横坐标开
- position属性可以让你让你随意控制一个特定元素在浏览器何处以及如何显示。比方说我们用position:fixed 让一个图片显示在浏览
- Pytorch转ONNX的意义一般来说转ONNX只是一个手段,在之后得到ONNX模型后还需要再将它做转换,比如转换到TensorRT上完成部
- 目录一、IPO模型 二、基本输入 - input()函数1、函数格式2、参数说明3、实例演示(1)接收字符串数据(2)接收整型数据
- 很多人在使用AJAX调用别人站点内容的时候,JS会提示"没有权限"错误,这是XMLHTTP组件的限制-安全起见禁止访问非
- 废话不多说,直接开干!需要库pip install openaiimport openai# Set your API keyopenai.
- python实现学生信息管理系统,供大家参考,具体内容如下#!/usr/bin/env python# -*- coding:utf-8 -
- 一、python读取和写入文件内容任务:在cmd默认登陆目录中建立一个命名为test.txt的文件并写入内容“welco
- 一、Set 集合类型Set 集合类型 (交差并补) 特点 :无序 , 自动去重集合用{}表示,元素间用逗号分隔建立集合类型用{}或set()
- 很多时候我们都需要了解下python中导入包的属性方法信息,当然dir 是最便捷的了,不过如果想知道特定的,例如以_ 开头的属性,需要写个筛
- pandas中的DataFrame中可以根据某个属性的同一值进行聚合分组,可以选单个属性,也可以选多个属性:代码示例:import pand
- 什么是 manimManim 是一个用于精确编程动画的引擎,专为创建解释性数学视频而设计。注意,有两个主要版本的 manim。该存储库最初是
- 本篇我们将学习简单的json数据的存储首先我们需要引入json模块:import json这里我们模拟一个常见常见,我们让用户输入用户名、密