You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Matlab中用列向量掩码循环实现矩阵元素乘法?

MATLAB中循环应用列向量掩码实现矩阵元素相乘

我需要在MATLAB中使用一个包含3个元素的列向量作为掩码,将矩阵的每个元素与掩码值相乘,且掩码要循环应用到矩阵的每一列。以下是我的实现代码及输出结果:

matrix = [1 3 5 2; 2 4 6 3; 7 8 10 1;3 5 4 2;2 4 6 3];
b=[2 3 4];
mask=b(:);
disp(matrix)
disp(mask)
[row, col] = size(matrix);

for j=1:col
    i=1;
    g=1;
    while((i<=row))
        if (g<=3)
            matrix(i,j)=matrix(i,j)*mask(g);
            g=g+1;
        else
            g=1;
            matrix(i,j)=matrix(i,j)*mask(g);
            g=g+1;
        end
        i=i+1;
    end
end

disp(matrix)

输出结果:

2     6    10     4
     6    12    18     9
    28    32    40     4
     6    10     8     4
     6    12    18     9

内容的提问来源于stack exchange,提问作者Suadad Najim

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.23 03:22:48