Multiplying values in one column with values in another, depending on criteria
2 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
Hi Everyone,
Suppose I have the following matrix:
A =
1.0__0.7__4.4__0.9__50.9
3.0__0.8__5.2__1.0__28.7
6.0__0.5__3.2__0.7__10.5
7.0__-0.5__3.6__0.8__87.7
Now I wish to calculate a value, which is found as follows:
1. Multiply the values in column 2, with the corresponding values in column 5, where the corresponding value in column 4 is greater than or equal to 0.8.
2. Sum the values found in step 1.
So, the answer I am looking for is:
0.7*50.9 + 0.8*28.7 + -0.5*87.7 = 14.74
What expression might do this?
Regards,
Ulrik
0 comentarios
Respuesta aceptada
Teja Muppirala
el 17 de Mayo de 2011
One way to do it:
sum( A(:,2) .* A(:,5) .* (A(:,4) >= 0.8) )
2 comentarios
Teja Muppirala
el 17 de Mayo de 2011
Another possibility,
idx = A(:,4) >= 0.8;
sum( A(idx,2) .* A(idx,5) )
Más respuestas (0)
Ver también
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!