Vecteur multiplier par matrice

Fermé
fatma.dammak - 23 juin 2015 à 18:36
Bonjour,
SVP, Si vous avez une idée:
j'ai cette matrice
[n,m]=size(p);
p=[

0 1.0000 0 0 1.0000 1.0000 0 0
0.6735 1.0000 0 0 0.3333 1.0000 0 1.0000
0.3265 0 0 1.0000 0 0 0.4839 0
1.0000 0 0 1.0000 0 0 0 1.0000
0 0 1.0000 0 0.6667 0 0.5161 0
0 0 1.0000 0 0 0 1.0000 0]

w=[0.1267 0.1267 0.0883 0.0517 0.0929 0.0706 0.1668 0.2764];
c. a dire pour chaque colonne un poid w_j
je veux calculer sum(W_j*p_j(i,j))/sum(w_j)
avec les w_j seulement qui ont un p(i,j)~=0


j'ai essayé mais ne donne pas la bonne réponse :
[n,m]=size(p);
for i=1:n
s=0;
ss=0;
for j=1:m
s=s+(weights(j)*p(:,j));

if p(i,j)~=0
ss=ss+(weights(j));
end

end

end
MM=s./ss;

j'ai pas trouvé les valeurs de vecteur MM entre 0 et 1