Numpy是高性能科学计算和数据分析的基础包,里面包含了许多对数组进行快速运算的标准数学函数,掌握这些方法,能摆脱数据处理时的循环。

1.首先数组转置(T)

创建二维数组data如下:

进行矩阵运算时,经常要用数组转置,比如计算矩阵内积X^T X.这时就需要利用数组转置,如下:

2.轴对换之transpose

对于高维数组,可以使用轴对换来对多个维度进行变换。

这里创建了一个三维数组,各维度大小分别为2,3,4。

transpose进行的操作其实是将各个维度重置,原来(2,3,4)对应的是(0,1,2)。使用transpose(1,0,2)后,各个维度大小变为(3,2,4),其实就是将第一维和第二维互换。

对于这个三维数组,转置T其实就等价于transpose(2,1,0),如下:

3.两轴对换swapaxes:swapaxes方法接受的参数是一对轴编号,使用transpose方法是对整个轴进行对换,而swapaxes是将参数的两个轴进行对换。刚刚上面的transpose(1,0,2),实际上就是将0和1轴进行对换,因此使用swapaxes也可以实现,如下:

上面就是Numpy包里面进行数组转置和轴对换最常用的方法。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

python numpy array转置_详解Numpy数组转置的三种方法T、transpose、swapaxes相关推荐

  1. mysql临键锁_详解 MySql InnoDB 中的三种行锁(记录锁、间隙锁与临键锁)

    详解 MySql InnoDB 中的三种行锁(记录锁.间隙锁与临键锁) 前言 InnoDB 通过 MVCC 和 NEXT-KEY Locks,解决了在可重复读的事务隔离级别下出现幻读的问题.MVCC  ...

  2. python 多因素方差分析_多因素方差分析估计平方和的三种方法

    在做多因素方差分析时,有三种方法计算平方和(以模型Y ~ A + B + A:B为例,即先输入A,再输入B,最后输入交互项A:B):Type Ⅰ Sums of Squares(Type1, sequ ...

  3. dpkg安装软件流程_详解linux安装软件的几种方法

    一.rpm包安装方式步骤: 1.找到相应的软件包,比如soft.version.rpm,下载到本机某个目录: 2.打开一个终端,su -成root用户: 3.cd soft.version.rpm所在 ...

  4. python binascii array('c')_详解Python中的array数组模块相关使用

    初始化array实例化可以提供一个参数来描述允许那种数据类型,还可以有一个初始的数据序列存储在数组中. import array import binascii s = 'This is the ar ...

  5. java全局异常处理_详解Spring全局异常处理的三种方式

    在J2EE项目的开发中,不管是对底层的数据库操作过程,还是业务层的处理过程,还是控制层的处理过程,都不可避免会遇到各种可预知的.不可预知的异常需要处理.每个过程都单独处理异常,系统的代码耦合度高,工作 ...

  6. 详解爬虫模拟登陆的三种方法

    摘要: 在进行爬虫时,除了常见的不用登录就能爬取的网站,还有一类需要先登录的网站.比如豆瓣.知乎,以及上一篇文章中的桔子网.这一类网站又可以分为:只需输入帐号密码.除了帐号密码还需输入或点击验证码等类 ...

  7. indexof方法_[ 翻译 ] ES6中数组去重的三种方法

    原文:How to Remove Array Duplicates in ES6 翻译:Hytonight云息 有三种方法可以过滤掉一个数组的重复元素并且返回去重后的新数组.我最喜欢使用Set,因为它 ...

  8. linux nc反弹命令,详解NC反弹shell的几种方法

    假如ubuntu.centos为目标服务器系统 kali为攻击者的系统,ip为:192.168.0.4,开放7777端口且没被占用 最终是将ubuntu.centos的shell反弹到kali上 正向 ...

  9. php反弹教程,详解NC反弹shell的几种方法

    假如ubuntu.CentOS为目标服务器系统 kali为攻击者的系统,ip为:192.168.0.4,开放7777端口且没被占用 最终是将ubuntu.CentOS的shell反弹到kali上 正向 ...

最新文章

  1. [转] Java中public,private,final,static等概念的解读
  2. 如何绕过chrome的弹窗拦截机制
  3. 恼人的函数指针(二)
  4. Visual Code 快捷创建HTML,CSS和Class
  5. java发送http请求的四种方式
  6. 全国首家工资总额负面清单管理试点企业获批
  7. HDU 1421 搬寝室 解题报告(超详细)
  8. 系统开发基础:UML相关知识笔记
  9. js实现排序去重计算字符次数
  10. ironpython3桌面开发_IronPython项目有了新负责人
  11. 报表式CListCtrl的使用详解初稿
  12. .NET Core 3 Preview 2 发布,C# 8 更强大的模式匹配
  13. String与字节数组转换
  14. Nginx之11吸星大法 - (页面缓存) 1
  15. 如何在程序中不用加号实现加法_python不用加号实现加法
  16. java数组元素的默认值_数组元素默认的初始值都是什么?
  17. flex学习笔记 数据验证
  18. ikm2022/IKM考试/ikm java
  19. python语言说句心里话歌词_python数据分析:民谣歌词汇总,告诉你他们到底在唱什么...
  20. 4月6日----4月10日二年级课程表

热门文章

  1. windows无法安装到这个磁盘。选中的磁盘采用GPT分区形式
  2. Qt的qrc资源文件在Visual studio编译出的Qt程序中不能显示问题解决
  3. Android开发之ApiCloud模块开发步骤
  4. C语言编程猜谜语,简单的谜语大全及答案
  5. html5图片怎么顶格,iQOO 5系列几乎达到了“顶格”的性能状态。
  6. AFNetworking 学习笔记
  7. 分享一下dudu回答的一个方法
  8. RabbitMQ入门-队列
  9. SharePoint 2013技巧分享系列 - 同步Exchange显示高清用户照片
  10. 第六次课作业(质量管理、项目人力资源管理)