有条理地替换矩阵中的值

Ada*_*dam 0 matlab matrix

说我有两个矩阵A = [ 1 0 0 1 ]B = [ 9 9 7 6 ].

如果A(i) != 0我想替换B(i)A(i).Matlab中是否有内置函数可以做到这一点?我不想使用循环.

the*_*alk 7

它是如此简单:

B(A ~= 0) = A(A ~= 0) 
Run Code Online (Sandbox Code Playgroud)

在Matlab中,不等于运算符,~=因为您可以在文档中找到它.您应该学习一些关于矩阵索引的基础知识,在这种情况下尤其是逻辑索引.

  • 我已经回答了很多这类问题,很难找到一个完全重复的问题.+1. (2认同)