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 相关文章推荐
python使用cookie库操保存cookie详解
Mar 03 Python
在Python 2.7即将停止支持时,我们为你带来了一份python 3.x迁移指南
Jan 30 Python
Python cookbook(数据结构与算法)实现对不原生支持比较操作的对象排序算法示例
Mar 15 Python
python实现NB-IoT模块远程控制
Jun 20 Python
python简单操作excle的方法
Sep 12 Python
Python Django 封装分页成通用的模块详解
Aug 21 Python
python爬虫添加请求头代码实例
Dec 28 Python
TensorFlow查看输入节点和输出节点名称方式
Jan 04 Python
浅析python 动态库m.so.1.0错误问题
May 09 Python
python线程池如何使用
May 28 Python
OpenCV+python实现实时目标检测功能
Jun 24 Python
有趣的二维码:使用MyQR和qrcode来制作二维码
May 10 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
yii2中使用Active Record模式的方法
2016/01/09 PHP
JavaScript replace(rgExp,fn)正则替换的用法
2010/03/04 Javascript
Javascript实现仿WebQQ界面的“浮云”兼容 IE7以上版本及FF
2011/04/27 Javascript
JavaScript中一个奇葩的IE浏览器判断方法
2014/04/16 Javascript
学习javascript面向对象 掌握创建对象的9种方式
2016/01/04 Javascript
利用JS实现数字增长
2016/07/28 Javascript
Bootstrap模态框调用功能实现方法
2016/09/19 Javascript
微信小程序 LOL 英雄介绍开发实例
2016/09/30 Javascript
JS实现根据用户输入分钟进行倒计时功能
2016/11/14 Javascript
AngularJS表单提交实例详解
2017/02/18 Javascript
vue.js $refs和$emit 父子组件交互的方法
2017/12/20 Javascript
JavaScript实现创建自定义对象的常用方式总结
2018/07/09 Javascript
使用puppeteer爬取网站并抓出404无效链接
2018/12/20 Javascript
一些你可能不熟悉的JS知识点总结
2019/03/15 Javascript
改变layer confirm弹窗按钮的颜色方法
2019/09/12 Javascript
Vue2.X和Vue3.0数据响应原理变化的区别
2019/11/07 Javascript
JS实现时间校验的代码
2020/05/25 Javascript
Python闭包之返回函数的函数用法示例
2018/01/27 Python
Python 多线程搜索txt文件的内容,并写入搜到的内容(Lock)方法
2019/08/23 Python
Python3 shutil(高级文件操作模块)实例用法总结
2020/02/19 Python
详解python如何引用包package
2020/06/07 Python
使用python脚本自动生成K8S-YAML的方法示例
2020/07/12 Python
墨西哥网上购物:Linio墨西哥
2016/10/20 全球购物
AJAX的优缺点都有什么
2015/08/18 面试题
初中音乐教学反思
2014/01/12 职场文书
中年人生感言
2014/02/04 职场文书
工作过失检讨书
2014/02/23 职场文书
网络管理专业求职信
2014/03/15 职场文书
四年级评语大全
2014/04/21 职场文书
党员弘扬焦裕禄精神思想汇报
2014/09/10 职场文书
员工试用期自我鉴定范文
2014/09/15 职场文书
无房产证房屋转让协议书合同样本
2014/10/18 职场文书
合法的离婚协议书范本
2014/10/23 职场文书
党的群众路线教育实践活动心得体会范文
2014/11/05 职场文书
高中语文教材(文学文化常识大全一)
2019/08/13 职场文书
Python实现视频中添加音频工具详解
2021/12/06 Python