Python Numpy 实现交换两行和两列的方法


Posted in Python onJune 26, 2019

numpy应该是一个和常用的包了,但是在百度查了很久,也没有查到如何交换两列(交换两行的有),所以查看了其他的文档,找到了方法。

交换两行

比如a = np.array([[1,2,3],[2,3,4],[1,6,5], [9,3,4]]),想要交换第二行和第三行,看起来很简单,直接写代码:

import numpy as np
a = np.array([[1,2,3],[2,3,4],[1,6,5], [9,3,4]])
tmp = a[1]
a[1] = a[2]
a[2] = tmp

运行结果却为:

array([[1, 2, 3],
  [1, 6, 5],
  [1, 6, 5],
  [9, 3, 4]])

原因是因为tmp = a[1]并非a[1]的一个copy,而是一个“别名”,那么我们改写成:

import numpy as np
a = np.array([[1,2,3],[2,3,4],[1,6,5], [9,3,4]])
tmp = np.copy(a[1])
a[1] = a[2]
a[2] = tmp

运行结果为:

array([[1, 2, 3],
  [1, 6, 5],
  [2, 3, 4],
  [9, 3, 4]])

结果正常,那还有没有更简单的方法呢,例如swap之类的,经查阅找到一种最简单的方法:

import numpy as np
a = np.array([[1,2,3],[2,3,4],[1,6,5], [9,3,4]])
a[[1,2], :] = a[[2,1], :]

交换两列

和上面类似:

a = np.array([[1,2,3],[2,3,4],[1,6,5], [9,3,4]])
a[:,[1,0,2]]
a

得到:

array([[1, 2, 3],
  [2, 3, 4],
  [1, 6, 5],
  [9, 3, 4]])

以上这篇Python Numpy 实现交换两行和两列的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python3中set(集合)的语法总结分享
Mar 24 Python
Pycharm远程调试openstack的方法
Nov 21 Python
python3中zip()函数使用详解
Jun 29 Python
python与caffe改变通道顺序的方法
Aug 04 Python
Python I/O与进程的详细讲解
Mar 08 Python
Python高级特性与几种函数的讲解
Mar 08 Python
使用python socket分发大文件的实现方法
Jul 08 Python
Python3.7 读取 mp3 音频文件生成波形图效果
Nov 05 Python
使用python+whoosh实现全文检索
Dec 09 Python
python的slice notation的特殊用法详解
Dec 27 Python
基于Python执行dos命令并获取输出的结果
Dec 30 Python
Python list列表删除元素的4种方法
Nov 01 Python
python 字典操作提取key,value的方法
Jun 26 #Python
通过PYTHON来实现图像分割详解
Jun 26 #Python
Flask模板引擎之Jinja2语法介绍
Jun 26 #Python
如何使用Python实现自动化水军评论
Jun 26 #Python
详解用pyecharts Geo实现动态数据热力图城市找不到问题解决
Jun 26 #Python
Python 数据可视化pyecharts的使用详解
Jun 26 #Python
python 实现交换两个列表元素的位置示例
Jun 26 #Python
You might like
.htaccess文件保护实例讲解
2011/02/06 PHP
PHP数组无限分级数据的层级化处理代码
2012/12/29 PHP
dhtmlxTree目录树增加右键菜单以及拖拽排序的实现方法
2013/04/26 PHP
php实现比较两个文件夹异同的方法
2015/06/18 PHP
PHP类的声明与实例化及构造方法与析构方法详解
2016/01/26 PHP
php中namespace及use用法分析
2016/12/06 PHP
CI框架简单分页类用法示例
2020/06/06 PHP
轻轻松松学习JavaScript
2007/02/25 Javascript
JavaScript的parseInt 进制问题
2009/05/07 Javascript
使用jQuery同时控制四张图片的伸缩实现代码
2013/04/19 Javascript
利用JS实现浏览器的title闪烁
2013/07/08 Javascript
IE浏览器下PNG相关功能
2015/07/05 Javascript
页面内容排序插件jSort使用方法
2015/10/10 Javascript
聊一聊JS中this的指向问题
2016/06/17 Javascript
JavaScript 中调用 Kotlin 方法实例详解
2017/06/09 Javascript
vue封装第三方插件并发布到npm的方法
2017/09/25 Javascript
AngularJS中控制器函数的定义与使用方法示例
2017/10/10 Javascript
vue 过滤器filter实例详解
2018/03/14 Javascript
Javascript实现时间倒计时功能
2018/11/17 Javascript
详解小程序input框失焦事件在提交事件前的处理
2019/05/05 Javascript
React传值 组件传值 之间的关系详解
2019/08/26 Javascript
[04:59]2018DOTA2亚洲邀请赛 4.7 Mineski夺冠时刻
2018/04/09 DOTA
Python中threading模块join函数用法实例分析
2015/06/04 Python
Google开源的Python格式化工具YAPF的安装和使用教程
2016/05/31 Python
Python实现性能自动化测试竟然如此简单
2019/07/30 Python
python为QT程序添加图标的方法详解
2020/03/09 Python
爱尔兰家电数码商城:Currys PC World爱尔兰
2016/07/23 全球购物
现代绅士日常奢侈品:Todd Snyder
2019/12/13 全球购物
娇韵诗俄罗斯官方网站:Clarins俄罗斯
2020/10/03 全球购物
怎么写好自荐书
2014/03/02 职场文书
建议书怎么写
2014/03/12 职场文书
2014最新党员批评与自我批评材料
2014/09/24 职场文书
2014小学年度工作总结
2014/12/20 职场文书
python plt.plot bar 如何设置绘图尺寸大小
2021/06/01 Python
mongodb数据库迁移变更的解决方案
2021/09/04 MongoDB
CentOS7环境下MySQL8常用命令小结
2022/06/10 Servers