matlab矢量化变阵

时间:2011-03-02 13:31:33

标签: arrays function variables matlab vectorization

有谁能告诉我在矩阵中相对于行/列号改变行或列背后的基本思想是什么?我一直试图通过

替换给定矩阵中的所有列
i=1:101;
V=ones(121,101);
V_t=1000*10.^((i-1)/20);
e=V_arr(1:121)';
V_arr=V; V_arr(:,i)=V_t*e;

我知道错误在于尝试相对于所有行替换多个列,并且我已经看到了使用repmat的另一种更简单的方法,但是我想知道是否有类似于一个在上面。 感谢。

1 个答案:

答案 0 :(得分:2)

您可以做的一件事是使用矩阵乘法,即n-by-1数组乘以1-by-m数组创建n-by-m数组。

例如

ii = 1:101; %# 1-by-101
V_t = 1000*10.^((i-1)/20);
ee = ones(121,1); %# 121-by-1

V_arr = ee * V_t;