How total of column of a matrix can be kept be same????

1 Ansicht (letzte 30 Tage)
suchismita
suchismita am 12 Jun. 2014
Kommentiert: suchismita am 12 Jun. 2014
If I have a matrix A A=[ 0.4000 0.6000 0.8000 0.8000 1.0000 1.6000 0.9333 1.2333 0.0000 0.0000; 1.2000 0.6000 0.8000 0.8000 1.0000 0.4000 0.5333 0 0 0; 1.2000 1.4000 1.6000 1.6000 1.8000 2.4000 2.5333 2.8333 4.0000 4.0000; 1.2000 1.4000 0.8000 0.8000 0.2000 0 0 0 0 0] I want to keep the total of column to remain same as here the total of each column is as:
sum(A(:,1))
ans =
4
>> sum(A(:,2))
ans =
4
>> sum(A(:,3))
ans =
4
>> sum(A(:,4))
ans =
4
>> sum(A(:,5))
ans =
4
>> sum(A(:,6))
ans =
4.4000
>> sum(A(:,7))
ans =
4
>> sum(A(:,8))
ans =
4.0667
>> sum(A(:,9))
ans =
4
>> sum(A(:,10))
ans =
4
at 6th and 8th column its becoming more than 4 .... so here how can round of this to 4??? plz plz help.....
  3 Kommentare
suchismita
suchismita am 12 Jun. 2014
yes....if needed some should be deleted to get 4
suchismita
suchismita am 12 Jun. 2014
here in my example matrix can you help me in modifying without disturbing the zeros...please...like if in a column sum is more than 4 it should minus the rest and if its less it should add to make it 4... can you help me in that way...

Melden Sie sich an, um zu kommentieren.

Akzeptierte Antwort

Jos (10584)
Jos (10584) am 12 Jun. 2014
This is called a normalisation procedure.
A = rand(10,6) % some random data
sumA = sum(A,1) % unequal column sums
normfun = @(a,b) 4 * (a/b)
Anorm = bsxfun(normfun, A, sumA) % normalise each column
sum(Anorm,1) % all 4, check!
  1 Kommentar
suchismita
suchismita am 12 Jun. 2014
thank u so much... but here in my example matrix can you help me in modifying without disturbing the zeros...please...like if in a column sum is more than 4 it should minus the rest and if its less it should add to make it 4... can you help me in that way...

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

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

Community Treasure Hunt

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

Start Hunting!

Translated by