How can I turn a data vector into a matrix of rows with the same vector?

2 vues (au cours des 30 derniers jours)
I have a matrix A which has different kind of data points. I also have a vector of constant values that need to be substract from each row from the matrix A. The problem is that a Matrix and a vector have different dimensions and can´t do arithmetic like that. I will provide an example:
A = [1,2;3,4] b = [5,6]
I want to turn vector b into a matrix having (n) row values being the same as the first row values. This way I will have a matrix: B = [5,6;5,6] I hope this makes sense. This is needed for a math formula in geology.

Réponse acceptée

James Tursa
James Tursa le 7 Nov 2016
Modifié(e) : James Tursa le 7 Nov 2016
If you just need to do the subraction:
result = bsxfun(@minus,A,b);
If you need your B for some other reason also, then:
B = repmat(b,size(A,1),1);
result = A - B;

Plus de réponses (0)

Catégories

En savoir plus sur Logical dans Help Center et File Exchange

Produits

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by