Très nouveau pour Matlab, j'utilise habituellement STATA. Je veux utiliser la fuction nchoosek pour obtenir la somme des vecteurs dans une matrice.Affectation de valeurs à une matrice par addition vectorielle à partir d'une matrice d'adjacence
J'ai une matrice d'adjacence 21x21, avec 0 ou 1 comme entrées. Je veux créer une nouvelle matrice, qui me donnera une somme d'entrées entre toutes les triades possibles de la matrice d'adjacence.
La nouvelle matrice devrait avoir quatre variables, indices (i, j, k) - correspondant à chaque combinaison de la 21x21. Et une dernière variable qui est une somme des entrées.
Le code que j'ai à ce jour est:
C = nchoosek(21,3)
B = zeros(nchoosek(21,3), 4)
for i=1:C
for j=i+1:C
for k=j+1:C
B(?)=B(i, j, k, A(i)+A(j)+A(k)) #A is the 21x21 adj mat
end
end
end
Je sais que ma déclaration d'affectation est incorrecte car je ne comprends le rôle terminé d'indexation du « : » opérateur. Toute aide serait appréciée.
Merci!
voulez-vous résumer toutes les lignes ou les colonnes triades possibles? Ou voulez-vous résumer toutes les combinaisons possibles des 441 éléments de votre matrice? Un exemple avec une matrice plus petite rendra cette question plus claire – anyanwu