How can I fix the error when multiple two matrices?

I have two (100*1) matrices. When I multiple them, an error occured "??? Error using ==> mtimes Inner matrix dimensions must agree. Please help me to fix it

 Réponse acceptée

Did you mean element-wise multiplication? If so, use the .* operator. E.g.,
a = your 100 x 1 vector
b = your 100 x 1 vector
result = a .* b;

Plus de réponses (1)

How do you want to multiply them? Element-by-element, to generate a vector the same size as x and y where each element is the product of the corresponding elements in x and y?
x = (1:10).';
y = (1:10).';
z1 = x.*y; % NOTE the period
isequal(z1(4), x(4)*y(4)) % for scalar multiplication, the * and .* operators are the same
Do you want to generate a 1-by-1, the dot product of the two vectors?
z2 = dot(x, y);
z3 = x.'*y;
isequal(z2, sum(x.*y))
isequal(z2, z3)
Do you want to generate a 10-by-10 matrix, the multiplication table for x and y?
z4 = x*y.';
isequal(z4(7, 8), x(7)*y(8))
multiplicationTable = [NaN, y.'; x, z4]

Catégories

En savoir plus sur Data Types dans Centre d'aide et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by