arrays - CHANGEM 的优雅矢量化版本(替换值)- MATLAB

标签 arrays matlab matrix vectorization

在 Matlab 2012b 中,有一个 changem 函数允许您用一组键指定的其他值替换矩阵的元素: Substitute values in data array

如果我没有映射工具箱,是否有优雅/矢量化的方式来做同样的事情?

最佳答案

是的,使用ismember:

A       = magic(3);
oldCode = [ 8  9];
newCode = [12 13];

[a,b] = ismember(A,oldCode);

A(a) = newCode(b(a));

我不知道 changem,我怀疑上面的内容不会完全涵盖它的功能(否则为什么 TMW 会引入 changem?),但是,它做你问的:)

关于arrays - CHANGEM 的优雅矢量化版本(替换值)- MATLAB,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13812656/

相关文章:

PHP:使用数组在另一个多维数组中获取值

javascript - 如果至少 2 个具有相同的属性值,则合并数组元素

arrays - 如何快速创建对象的数组列表

r - R 中具有矩阵运算的 Margrittr 管道

algorithm - 将网格转换为加权邻接列表

javascript - 无法将文本转换为 JavaScript 数组

matlab - 如何将 Simulink 模块的输出作为输入反馈?

matlab - 向量的最大值

Matlab:拒绝抽样

latex - LaTeX中矩阵的行和列标签