how to add and substract manually in a matrix?

1 Ansicht (letzte 30 Tage)
suchismita
suchismita am 2 Mai 2014
Bearbeitet: suchismita am 8 Mai 2014
I have a matrix like
A=[1 1 0.7 1
0.7 1 1 1
1 1 0.7 1]
now i want to addition of each column to be 3 so in first column its total is 2.7. where 3-2.7 = 0.3. i want to divide this 0.3 in rest 1 that is 0.15 to 1st element A(1,1) and A(3,1). same wise i want to do for each column. how shall i do that...plz plz help me....
  3 Kommentare
Nitin
Nitin am 2 Mai 2014
Are you trying to nomalize here?
suchismita
suchismita am 2 Mai 2014
no actually...its a part of my phd work...that i have to check whether i can do this type of manipulation in matlab

Melden Sie sich an, um zu kommentieren.

Akzeptierte Antwort

Azzi Abdelmalek
Azzi Abdelmalek am 2 Mai 2014
A=[1 1 0.7 1
0.7 1 1 1
1 1 0.7 1]
s=3-sum(A);
ii=A==1;
jj=sum(ii);
a=s./jj;
b=bsxfun(@times,ii,a);
b(isnan(b))=0;
B=A;
k=b~=0;
B(k)=A(k)+b(k)
  1 Kommentar
suchismita
suchismita am 8 Mai 2014
Bearbeitet: suchismita am 8 Mai 2014
i have a doubt if i want to edit this same example and assume that after the calculation of 1st column, 2nd column will be calculated from the first....as the subtracting and adding will be done on the value of the previous column.
as for example:
B=[1.15 1.15 0.85 0.85; 0.7 0.7 1.3 1.3; 1.15 1.15 0.85 0.85]

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu Creating and Concatenating Matrices 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