Board logo

标题: Matlab中找在两矩阵相同的行编号 [打印本页]

作者: yuyang911220    时间: 2017-2-23 17:00     标题: Matlab中找在两矩阵相同的行编号

如有矩阵a=[2 3;3 3;5 6;7 8],现在需要寻找在矩阵a中和矩阵b=[3 3]相同的行编号,或者寻找在矩阵a中是否有一行和矩阵b相等,请问各位大侠应该如何解决?使用for循环的方法小弟知道如何做,就是想问问大家有没有什么matlab中自带的函数可以解决这个问题?



解答:

bsxfun函数的使用


语法:C = bsxfun(fun,A,B)

对数A和B进行二元操作,其中fun是函数句柄,可以是 M-file 函数,也可以是如下built-in 函数:
  • @plus        Plus
  • @minus       Minus
  • @times       Array multiply
  • @rdivide     Right array divide
  • @ldivide     Left array divide
  • @power       Array power
  • @max         Binary maximum
  • @min         Binary minimum
  • @rem         Remainder after division
  • @mod         Modulus after division
  • @atan2       Four quadrant inverse tangent
  • @hypot       Square root of sum of squares
  • @eq          Equal
  • @ne          Not equal
  • @lt          Less than
  • @le          Less than or equal to
  • @gt          Greater than
  • @ge          Greater than or equal to
  • @and         Element-wise logical AND
  • @or          Element-wise logical OR
  • @xor         Logical exclusive OR
  • 如果使用了M-file 函数, 输入必须是同样大小的两个列向量, 或者一个是列向量,一个是标量;
  • 输出数组C的大小为:
  • max(size(A),size(B)).*(size(A)>0 & size(B)>0).





欢迎光临 电子技术论坛_中国专业的电子工程师学习交流社区-中电网技术论坛 (http://bbs.eccn.com/) Powered by Discuz! 7.0.0