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实现下载指定网址所有图片的方法
Aug 08 Python
Python制作爬虫采集小说
Oct 25 Python
Python配置mysql的教程(推荐)
Oct 13 Python
Python爬虫包BeautifulSoup简介与安装(一)
Jun 17 Python
tensorflow: variable的值与variable.read_value()的值区别详解
Jul 30 Python
Python之虚拟环境virtualenv,pipreqs生成项目依赖第三方包的方法
Jul 23 Python
Django实现从数据库中获取到的数据转换为dict
Mar 27 Python
Python3如何判断三角形的类型
Apr 12 Python
python/golang 删除链表中的元素
Sep 14 Python
Python 2.6.6升级到Python2.7.15的详细步骤
Dec 14 Python
如何编写python的daemon程序
Jan 07 Python
如何用 Python 制作一个迷宫游戏
Feb 25 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
基于PHP编程注意事项的小结
2013/04/27 PHP
PHP计算当前坐标3公里内4个角落的最大最小经纬度实例
2016/02/26 PHP
javascript 图片上一张下一张链接效果代码
2010/03/12 Javascript
Javascript中找到子元素在父元素内相对位置的代码
2012/07/21 Javascript
JS实现点击链接取消跳转效果的方法
2014/01/24 Javascript
javascript 3d 逐侦产品展示(核心精简)
2014/03/26 Javascript
javascript中不易分清的slice,splice和split三个函数
2016/03/29 Javascript
JavaScript是如何实现继承的(六种方式)
2016/03/31 Javascript
jquery.validate使用详解
2016/06/02 Javascript
利用Angularjs和bootstrap实现购物车功能
2016/08/31 Javascript
vue.js动态数据绑定学习笔记
2017/05/19 Javascript
Bootstrap弹出框(Popover)被挤压的问题小结
2017/07/11 Javascript
react router4+redux实现路由权限控制的方法
2018/05/03 Javascript
纯JS实现的读取excel文件内容功能示例【支持所有浏览器】
2018/06/23 Javascript
Vue 利用指令实现禁止反复发送请求的两种方法
2019/09/15 Javascript
在vue项目实现一个ctrl+f的搜索功能
2020/02/28 Javascript
解决Vue + Echarts 使用markLine标线(precision精度问题)
2020/07/20 Javascript
Selenium执行JavaScript脚本的方法示例
2020/12/31 Javascript
[01:04:06]DOTA2上海特级锦标赛A组资格赛#2 Secret VS EHOME第一局
2016/02/26 DOTA
Python基于PycURL实现POST的方法
2015/07/25 Python
django使用xlwt导出excel文件实例代码
2018/02/06 Python
基于scrapy的redis安装和配置方法
2018/06/13 Python
Python这样操作能存储100多万行的xlsx文件
2019/04/16 Python
使用python分析统计自己微信朋友的信息
2019/07/19 Python
pytorch::Dataloader中的迭代器和生成器应用详解
2020/01/03 Python
浅谈python出错时traceback的解读
2020/07/15 Python
pandas处理csv文件的方法步骤
2020/10/16 Python
html5清空画布方法(三种)
2017/10/16 HTML / CSS
Smashbox英国官网:美国知名彩妆品牌
2017/11/13 全球购物
轻化专业学生实习自我鉴定
2013/09/20 职场文书
中秋晚会活动方案
2014/08/31 职场文书
创优争先心得体会
2014/09/11 职场文书
贪污检举信范文
2015/03/02 职场文书
关于国庆节的广播稿
2015/08/19 职场文书
智慧人生:永远不需要向任何人解释你自己
2019/08/20 职场文书
python神经网络编程之手写数字识别
2021/05/08 Python