我有以下向量:
a = [1 2];
b = [0.25 0.5];
我想获得一个 2x2 矩阵 c:
c = [1/0.25+1/0.5 2/0.25+1/0.5
1/0.25+2/0.5 2/0.25+2/0.5];
我将如何基于 a 和 b 实现矩阵 d
d= [ 1/0.25 2/0.25
1/0.5 2/0.5]
谢谢
How about
A = repmat(a, numel(a),1);
A/b(1) + A.'/b(2)
for the second part of your question, try
d = bsxfun(@rdivide, a, b.')
您可以这样计算 d:
d = (1./b)'*a
c = [ a(1)/b(1)+a(1)/b(2) a(2)/b(1)+a(1)/b(2) a(1)/b(1)+a(2)/b(2) a(2)/b(1)+a(2)/b(2)];