numpy.ndarray 交换多维数组(矩阵)的行/列方法
如下所示:
>> import numpy as np >> P = np.eye(3) >> P array([[ 1., 0., 0.], [ 0., 1., 0.], [ 0., 0., 1.]])
交换第 0 行和第 2 行:
>> P[[0, 2], :] = P[[2, 0], :] # P[(0, 2), :] = P[(2, 0), :] >> P array([[ 0., 0., 1.], [ 0., 1., 0.], [ 1., 0., 0.]])
再交换第一列和第三列:
>> P[:, [0, 2]] = P[:, [2, 0]] >> P array([[ 1., 0., 0.], [ 0., 1., 0.], [ 0., 0., 1.]])
注意以下是错误的做法:
>> P[0, :], P[2, :] = P[2, :], P[0, :] >> P array([[ 0., 0., 1.], [ 0., 1., 0.], [ 0., 0., 1.]]) # 不尽写出来啰嗦,而且代表的意义也不是交换
以上这篇numpy.ndarray 交换多维数组(矩阵)的行/列方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们。
相关推荐
-
python 实现矩阵上下/左右翻转,转置的示例
python中没有二维数组,用一个元素为list的list(matrix)保存矩阵,row为行数,col为列数 1. 上下翻转:只需要把每一行的list交换即可 for i in range(row // 2): matrix[i], matrix[row-1-i] = matrix[row-1-i], matrix[i] 2. 左右翻转:需要逐个交换元素 for m in matrix: for j in range(col // 2): m[j], m[col-1-j] = m[col-1-
-
Python 实现交换矩阵的行示例
如下所示: # TODO r1 <---> r2 # 直接修改参数矩阵,无返回值 def swapRows(M, r1, r2): M[r1],M[r2] = M[r2],M[r1] pass 以上这篇Python 实现交换矩阵的行示例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们.
-
numpy.ndarray 交换多维数组(矩阵)的行/列方法
如下所示: >> import numpy as np >> P = np.eye(3) >> P array([[ 1., 0., 0.], [ 0., 1., 0.], [ 0., 0., 1.]]) 交换第 0 行和第 2 行: >> P[[0, 2], :] = P[[2, 0], :] # P[(0, 2), :] = P[(2, 0), :] >> P array([[ 0., 0., 1.], [ 0., 1., 0.], [ 1.
-
numpy中实现二维数组按照某列、某行排序的方法
如何根据二维数组中的某一行或者某一列排序?假设data是一个numpy.array类型的二维数组,可以利用numpy中的argsort函数进行实现,代码实例如下: data = data[data[:,2].argsort()] #按照第3列对行排序 注意:argsort返回的只是排好序后的行索引,不会改变原数组. 按照某行进行排序,可以利用转置操作,代码如下所示: data = data.T(data.T[:,2].argsort()).T # 按照第3行对列进行排序 也可以直接按行进行排序,
-
Python实现二维数组按照某行或列排序的方法【numpy lexsort】
本文实例讲述了Python实现二维数组按照某行或列排序的方法.分享给大家供大家参考,具体如下: lexsort支持对数组按指定行或列的顺序排序:是间接排序,lexsort不修改原数组,返回索引. (对应lexsort 一维数组的是argsort a.argsort()这么使用就可以:argsort也不修改原数组, 返回索引) 默认按最后一行元素有小到大排序, 返回最后一行元素排序后索引所在位置. 设数组a, 返回的索引ind,ind返回的是一维数组 对于一维数组, a[ind]就是排序后的数组.
-
numpy ndarray 按条件筛选数组,关联筛选的例子
最近的项目中大量涉及数据的预处理工作,对于ndarray的使用非常频繁.其中ndarray如何进行数值筛选,总结了几种方法. 1.按某些固定值筛选 如下面这段代码从,ndarray中可以筛选出数值等于3的子数组和其在原数组中的索引位置. import numpy as np arr = np.array([1, 1, 1, 134, 45, 3, 46, 45, 65, 3, 23424, 234, 12, 12, 3, 546, 1, 2]) print(np.where(arr==3)) p
-
将不规则的Python多维数组拉平到一维的方法实现
原始需求: 例如有一个列表: l = [[1, 2, 3], [4, 5, 6], [7, 8, 9]] 希望把它转换成下面这种形式: [1, 2, 3, 4, 5, 6, 7, 8, 9] 其实这个非常简单,我将分享三个一行式代码来解决这个问题. 但如果是下面这种不规则的多维列表: l = [[1, 2], [3, 4], [5, [6, 7, [8, 9]]], 10, [11, [12, 13, [14, 15, [16]]]]] 我们想将它拉平到一维列表: [1, 2, 3, 4, 5,
-
python 二维数组90度旋转的方法
如下所示: #!/usr/bin/env python #-*- coding: utf-8 -*- """ [0, 1, 2, 3] [0, 1, 2, 3] [0, 1, 2, 3] [0, 1, 2, 3] 2维数组顺时针90度旋转后结果如下 [0, 0, 0, 0] [1, 1, 1, 1] [2, 2, 2, 2] [3, 3, 3, 3] [0][1] <==> [1][0] [0][2] <==> [2][0] [0][3] <==
-
numpy ndarray 取出满足特定条件的某些行实例
在进行物体检测的ground truth boxes annotations包围框坐标数据整理时,需要实现这样的功能: numpy里面,对于N*4的数组,要实现对于每一行,如果第3列和第1列数值相等或者第2列和第0列数值相等,就删除这一行,要返回保留下来的numpy数组 shape M*4 对于numpy数组的操作要尽量避免for循环,因为numpy数组支持布尔索引. import numpy as np a1=np.array( [1,0,1,5] ) a2=np.array( [0,8,5,
-
Java二维数组简单定义与使用方法示例
本文实例讲述了Java二维数组简单定义与使用方法.分享给大家供大家参考,具体如下: Java的二维数组是先创建一个一维数组,然后该数组的元素再引用另外一个一维数组.在使用二维数组的时候,通过两个中括号[]来访问每一层维度的引用,直到访问到最终的数据. public class MultiDimArray{ /** * @param args */ public static void main(String[] args) { int[][] arr = new int[3][]; arr[0]
-
PHP实现对二维数组某个键排序的方法
本文实例讲述了PHP实现对二维数组某个键排序的方法.分享给大家供大家参考,具体如下: /** * 对查询结果集进行排序 * @access public * @param array $list 查询结果 * @param string $field 排序的字段名 * @param string $sortby 排序类型 (asc正向排序 desc逆向排序 nat自然排序) * @return array */ function list_sort_by($list, $field, $sort
-
PHP递归遍历多维数组实现无限分类的方法
本文实例讲述了PHP递归遍历多维数组实现无限分类的方法.分享给大家供大家参考,具体如下: <?php //$data[]=array('id'=>1,'parentid'=>0,'name'=>'中国','img'=>'52091199'); $data[]=array('id'=>1,'parentid'=>0,'name'=>'中国'); $data[]=array('id'=>2,'parentid'=>0,'name'=>'美国')
随机推荐
- PHP入门学习笔记之一
- 为用户批量建立私人文件夹并设定权限的批处理
- VueJs与ReactJS和AngularJS的异同点
- 浅谈Linux内核创建新进程的全过程
- Java使用JavaMail发送邮件的方法
- JavaFX之TableView的使用详解
- iOS微信支付交互图分析
- asp.net+js 实现无刷新上传解析csv文件的代码
- PHP 面向对象程序设计(oop)学习笔记 (四) - 异常处理类Exception
- PHP实现把文本中的URL转换为链接的auolink()函数分享
- C#获取路由器外网IP,MAC地址的实现代码
- Android实现夜间模式切换功能实现代码
- php 编写安全的代码时容易犯的错误小结
- JavaScript 格式字符串的应用
- js 第二代身份证号码的验证机制代码
- js弹出窗口简单实现代码
- Python命名空间详解
- jQuery实现选项联动轮播效果【附实例】
- 读jQuery之十一 添加事件核心方法
- Java 从网上下载文件的几种方式实例代码详解