Modérateur : Groupe des modérateurs
Code : Tout sélectionner
(X <- data.frame(A=rep(rep(1:2, 3), 2), B=rep(rep(1:3, 2),2)))
duplicated(X)
duplicated(X$A)
Code : Tout sélectionner
Comparaison <- cbind(Classement_1, Classement_2)
Nicolas Giraud a écrit :Je ne comprends pas en quoi tester l'unicité des paires de notes me permettra d'observer une modification dans le classement ..? puisque je cherche à observer un changement de position de mes individus suivant une méthodologie de calcul différent...
si ce qui t’intéresse c'est le classement relatif de tes individus selon le mode, tu peut faire la même chose sur des colonnes représentant cette position par individus (que tu devrais pouvoir récupérer via la fonction order) selon la méthode de calcul plutôt que sur les notes
Code : Tout sélectionner
library(tidyverse)
dta <- tibble(
id = seq_len(25),
note_1 = rnorm(n = length(id)),
note_2 = rnorm(n = length(id)),
rank_1 = rank(note_1),
rank_2 = rank(note_2)
)
Code : Tout sélectionner
dta %>%
mutate(
change_rank = rank_1!=rank_2
) %>%
filter(change_rank)
Code : Tout sélectionner
dta[dta[, "rank_1"]!=dta[, "rank_2"], ]
Code : Tout sélectionner
library(tidyverse)
X2017_all_data_csv <- read_csv("2017_all_data_csv.zip")
attach(X2017_all_data_csv)
note <- function(a,b,c,d,e,f,g)
{
#expression de la note générale, A, B,...G étant différents critères pour la note générale issus du fichier X2017_all_data_csv
N <- a*A - b*B - (c*C + d*D + e*E + f*F + g*G) #a,b,...g les coefficients donnés pour chaque critère
return(N)
}
N_2017_ref <- note(3,2,0.4,0.2,0.2,0.1,0.1) #calcul de la note de reference avec les coefficients de ref
N_2017_ref
note_2017_ref <- data.frame(id, N_2017_ref)
note_2017_ref
#supprimer les valeurs NA car données manquantes#
note_2017_ref<- na.omit(note_2017_ref);dim(note_2017_ref)
note_2017_ref
rank_2017_indiv_ref <- rev(rank(note_2017_ref$N_2017_ref))
rank_2017_indiv_ref
class_rank_2017_indiv_ref<- data.frame(note_2017_ref, rank_2017_indiv_ref)
class_rank_2017_indiv_ref
###script ci-dessus réalisé aussi pour N_2017_1 avec des coeff. différents puis :
tableaux_indiv_2017 <- cbind(class_rank_2017_indiv_ref, class_rank_2017_indiv_1)
tableaux_indiv_2017
colnames(tableaux_indiv_2017) =c('id_ref', 'N_2017_ref', 'rank_2017_indiv_ref', 'id_1', 'N_2017_1', 'rank_2017_indiv_1')
tableaux_indiv_2017
#comparaison des rangs obtenus, les rangs ont changé = TRUE (nouvelle colonne)
comp_tableaux_indiv_2017 <- tableaux_indiv_2017 %>%
mutate(
change_rank = rank_2017_indiv_ref!=rank_2017_indiv_1
) %>%
filter(change_rank)
comp_tableaux_indiv_2017
#ne fonctionne pas ?
tableaux_indiv_2017[tableaux_indiv_2017[, "rank_2017_indiv_ref"]!=tableaux_indiv_2017[, "rank_2017_indiv_1"], ]
#Exportation de ce tableau comparatif vers EXCEL
write_csv(comp_tableaux_indiv_2017,"comp_2017_ref_1.csv")
En fait il faudrait que tu définisse plus précisément ce que tu veux visualiser, en effet si tu veux comparer plusieurs permutations (chaque classement, si on ne considère pas d’ex-æquo, correspond à une permutation possible des différents individus) on peut imaginer différentes métriques pour les comparer.
par exemple on peut regarder le changement moyen de position des individus, ou considérer le nombre minimal d'opération de permutation élémentaires nécessaires pour passer d'un classement à un autre, le % d'individus n'ayant pas changé de position, ou juste le changement de position d'un seul individu...
Nicolas Giraud a écrit :Pourquoi m'indique t'il des rangs de type ".5" ?
Retourner vers « Questions en cours »
Utilisateurs parcourant ce forum : Aucun utilisateur enregistré et 1 invité