【问题标题】:Matlab: how to apply point-wise function on a matrix?Matlab:如何在矩阵上应用逐点函数?
【发布时间】:2011-02-26 00:08:00
【问题描述】:

我正在使用 Matlab 做我的一个项目。我被困在一件基本的事情上。

我有 2 个矩阵 - A 和 B 以及一个向量 V。我想要做的是:

A(i, j) = V(B(i,j)) 对于所有 i, j。

我尝试以最明显的方式执行此操作 - 嵌套循环。出于某种原因,A 没有被填充。我错过了什么吗?有没有更有效的(内置函数)方式来做到这一点。

谢谢,

阿尼尔。

【问题讨论】:

  • 你能把你的代码给我们看看有什么问题吗?
  • 是的,A 和 B 大小相同。

标签: function matlab matrix


【解决方案1】:

如果B中的所有条目都是大于零的整数,并且B的最大值不大于V中的元素个数,那么你可以简单地写

A = V(B);

【讨论】:

  • 我完全搞砸了没有尝试这个简单的事情。如果我想对矩阵中的每个元素应用特定的函数,有没有一种简单的方法。比如说,A(i,j) = B(i,j)^x ?
  • @Anil Katti:A=B.^x 就是您要找的。 . 以元素方式应用操作。
猜你喜欢
  • 2013-01-03
  • 1970-01-01
  • 2020-05-05
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多