美文网首页
MATLAB与numpy矩阵中元素位运算的实现区别

MATLAB与numpy矩阵中元素位运算的实现区别

作者: 高正杰 | 来源:发表于2017-12-23 09:52 被阅读111次

缘由:在将MATLAB代码转换成Python代码时所遇到的问题。


存在m*n二值矩阵(逻辑矩阵,元素由0和1组成mat1,mat2,mat3,mat4,求多个矩阵中同时大于0的位置下标(MATLAB中矩阵的下标以列为主序,即从第一列的第一行到最后一行依次编号,接着第二列,。。。)


MATLAB代码为:

index = find(mat1 & mat2 & mat3 & mat4);

Python代码为:

import  numpy as np
temp = np.logical_and(np.logical_and(np.logical_and(mat1, mat2), mat3),mat4).flatten(1) 
#flatten(1)表示结果以列为主序进行扁平化
index = np.nonzero(temp)[1] #因为已经扁平化成一行了,所以此处去不为0的元素的列坐标



该文章于2017年5月12日于CSDN上首次发表,2017年12月22日搬家至此!

相关文章

  • MATLAB与numpy矩阵中元素位运算的实现区别

    缘由:在将MATLAB代码转换成Python代码时所遇到的问题。 存在m*n二值矩阵(逻辑矩阵,元素由0和1组成m...

  • Numpy学习笔记

    点积与乘法运算符 Numpy的乘法运算符*是按元素逐个运算的,与matlab不同。假设矩阵a(m,n) b(n,k...

  • Numpy中的矩阵运算+聚合操作+arg运算(2019.1.17

    Numpy中的矩阵运算 1.矩阵与数值之间的运算,矩阵与数值之间的算术运算,是矩阵里面的元素与数值进行运算 2.矩...

  • matlab小知识

    matlab &与&&的区别 &适用于矩阵间的逻辑运算,&&不适用,只适用于单个元素,包括数值和字符。

  • matlab基础语法

    matlab中主要是矩阵运算 矩阵赋值 矩阵运算 控制流程 绘图

  • MATLAB的矩阵运算与重构

    数组运算与矩阵运算 在MATLAB中,术语矩阵和数组在一般情况下是没有区别的。严格地说,一个矩阵就是一个二维的数组...

  • Octave教程(三)

    矩阵运算 其中,“.”表示元素位运算。 如何求转置矩阵 一些有用的函数 其中,flipud()实现矩阵的上下翻转。

  • 「转载」MATLAB tutorial

    MATLAB命令大全和矩阵操作大全一、矩阵的表示在MATLAB中创建矩阵有以下规则: a、矩阵元素必须在”[ ]”...

  • 3.6 矩阵运算

    3.6.1 矩阵运算规则 矩阵的加减法运算规则与数组相同,即元素运算,其结果返回新的矩阵。倍乘数运算也是矩阵内元素...

  • DL01-4:感知器实现(向量版)

    1.使用numpy做内积运算2.使用向量或者矩阵内积实现感知器 一、向量与矩阵的内积计算 1、向量作为矩阵的注意点...

网友评论

      本文标题:MATLAB与numpy矩阵中元素位运算的实现区别

      本文链接:https://www.haomeiwen.com/subject/izmfgxtx.html