Dividing an entire row by every element of a column

15 visualizaciones (últimos 30 días)
Nany
Nany el 5 de Abr. de 2022
Comentada: Voss el 6 de Abr. de 2022
Hi,
I have a 20x 60 matrix. I am trying to divide an entire row (3rd) by every element of the first column.
I know it should be solved using for loop but I am still fairly new to MATLAB, so I don't know the syntax of For Loop. Would appreciate any help.
  4 comentarios
Nany
Nany el 6 de Abr. de 2022
Editada: Nany el 6 de Abr. de 2022
my_matrix= [ 2 4 8 10 10 8; 6 16 16 20 18 30]
second_row= my_matrix(2, :)
first_column= my_matrix (:,1)
I want to divide every element in the second row by every element in the first colmun (2 and 6 in this case)
Is it possible in matlab?
Torsten
Torsten el 6 de Abr. de 2022
What we'd like to know is: what would be the result for your test matrix from above ?

Iniciar sesión para comentar.

Respuesta aceptada

Voss
Voss el 5 de Abr. de 2022
Like this? (Using a 5x3 matrix as an example.)
A = (1:5).'+3*(0:2)
A = 5×3
1 4 7 2 5 8 3 6 9 4 7 10 5 8 11
A(3,:)./A(:,1) % 3rd row divided by first column
ans = 5×3
3.0000 6.0000 9.0000 1.5000 3.0000 4.5000 1.0000 2.0000 3.0000 0.7500 1.5000 2.2500 0.6000 1.2000 1.8000
% 3/1 6/1 9/1
% 3/2 6/2 9/2
% 3/3 6/3 9/3
% 3/4 6/4 9/4
% 3/5 6/5 9/5
  2 comentarios
Nany
Nany el 6 de Abr. de 2022
Thank you!
Let's say I want to multiply every element in the second column of the original matrix by 7. Can I use the operator ".*" ?
As in
C= A(:, 2) .* 7
Voss
Voss el 6 de Abr. de 2022
You're welcome!
Yes, that will work. You could also use "*" (without the period) since 7 is a scalar, not a vector.

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre Performance and Memory en Help Center y File Exchange.

Community Treasure Hunt

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

Start Hunting!

Translated by