How can I divide each element of a vector by each of the elements of another vector in MATLAB?
21 次查看(过去 30 天)
显示 更早的评论
Say I have two vectors:
a= [ 1
2
3 ];
b=[4
5
6];
And I want
c= [1/4
2/4
3/4
1/5
2/5
3/5
1/6
2/6
3/6];
Is there a way to do this?
1 个评论
dpb
2021-4-8
I'm undoubtedy overlooking the obvious but
cell2mat(arrayfun(@(i)a/b(i),1:numel(b),'UniformOutput',false))
采纳的回答
James Tursa
2021-4-8
编辑:James Tursa
2021-4-8
Assuming a and b are both column vectors, you can use automatic array expansion by transposing one of them and using element-wise divide:
c = a ./ b.'; % results in a 2D matrix
c = c(:); % turn 2D matrix into a column vector
0 个评论
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Multidimensional Arrays 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!