Bonsoir,
J'ai codé la fonction ci-dessous pour travailler sur une matrices X de n lignes *4 colonnes(1e col: Id user, 2e col: Id film). Quand je fais appel a cette fonction, par ex: SimU(1,2,X), le message d'erreur "Index exceeds matrix dimension" s'affiche. Je n'arrive pas à trouver le problème, où est-ce que je me trompe ? Merci
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23 function Su = SimU(u1,u2,X) %Calcul de la similarite entre deux utilisateurs % cpt : compteur de film ayant ete evalue par u1 et u2 cpt=0; res=0; [n,d]=size(X); %boucle pour chercher les films evalue par u1 for i = 1:n if X(i,1)== u1 %boucle pour chercher les films evalue par u2 for j = 1:n if X(j,1)== u2 %condition si le film a ete evalue par u1 et u2 if X(i,2) == X(j,2) res = ((X(i,3)-X(j,3)).^2); sum = sum + res; cpt = cpt+1;
Partager