logical indexing for row-wise average

How can I get a row-wise mean of this matrix
1 2 3
A = 4 5 6
7 8 9
but I only want to select these entries
0 1 1
B = 1 1 0
1 0 1
so the result would be something like
2.5
C = 4.5
8.0
Actually, this is easily possible with a loop, but I'd prefer a 1-line code. (this one is just a question of beauty :-))

 Akzeptierte Antwort

Matt J
Matt J am 28 Mär. 2013

1 Stimme

C=sum(A.*B,2)./sum(B,2);

1 Kommentar

Vincent
Vincent am 28 Mär. 2013
thanks, quite clever using .* instead of indexing, thank you! :-)

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Produkte

Tags

Gefragt:

am 28 Mär. 2013

Community Treasure Hunt

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

Start Hunting!

Translated by