Filter löschen
Filter löschen

how can I find the maximum value in each row of a matrix and sum along the column then assign the values to another matrix

3 Ansichten (letzte 30 Tage)
example
2 3
3 4
5 3
1 2
3 2.5
the answer will be a vector (5+3, 3+4+2) the code may be incorrect but, I only try my assumptions.
v=[1400 1600 1200 800 1000];
r=[500 400];
for i=1:numel(v)
t=0;
for j=1:numel(r)
eet(i,j)=v(i)./r(j);
et(i,j)=v(i)./r(j);
c(i,j)=eet(i,j)+t;
ctc(i,j)=eet(i,j)+t;
t=t+eet(i,j);
end
end;
M=max(eet,[],2); % this gives me all the maximum value along a colunm vector
  2 Kommentare
Stephen23
Stephen23 am 24 Okt. 2017
@Bashir Yusuf Bichi: today I formatted your code correctly for you. Please do not keep reverting it. In future you can format it correctly yourself: simply select the code text, then click the {} Code button.

Melden Sie sich an, um zu kommentieren.

Akzeptierte Antwort

Stephen23
Stephen23 am 24 Okt. 2017
Bearbeitet: Stephen23 am 24 Okt. 2017
All you need is max and accumarray:
>> M = [2,3;3,4;5,3;1,2;3,2.5];
>> [V,I] = max(M,[],2);
>> B = accumarray(I,V)
B =
8
9
  5 Kommentare

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu Matrices and Arrays finden Sie in Help Center und File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by