Fonction pour le calcul de valeurs uniques par années

Postez ici vos questions, réponses, commentaires ou suggestions - Les sujets seront ultérieurement répartis dans les archives par les modérateurs

Modérateur : Groupe des modérateurs

Fiona_Moral
Messages : 6
Enregistré le : 23 Jan 2023, 16:40

Fonction pour le calcul de valeurs uniques par années

Messagepar Fiona_Moral » 09 Mar 2023, 10:02

Bonjour,
Je souhaiterai pouvoir calculer automatiquement le nombre de valeurs uniques se trouvant dans une colonne en fonction de l'année dans ma base de données.
C'est une base de données dans laquelle chaque dossier à un identifiant unique ("Ref_Dossier") mais peut se retrouver sur plusieurs lignes en fonction des critères qu'il remplit. Un simple calcul par ligne ne suffit donc pas.
Actuellement, je sépare ma base de données en plusieurs sous tableaux par an puis je compte le nombre de valeurs uniques. Voici un extrait de mon code :

Code : Tout sélectionner

An17<-subset(Data,Data$Date>"2017-01-01" & Data$Date<"2017-12-31")   #An17 = sous tableau contenant uniquement les lignes de 2017 issues de Data
nb17<-length(unique(An17$`Ref_Dossier`)) ; nb17      #nb17 : nombre de valeurs uniques en 2017

An18<-subset(Data,Data$Date>"2018-01-01" & Data$Date<"2018-12-31")
nb18<-length(unique(An18$`Ref_Dossier`)) ; nb18

An <- data.frame(c(nb17,nb18)         #tableau final regroupant les nombres de valeurs uniques par an
colnames(An) <- "Nombre de dossiers"
rownames(An)<-c("2017","2018")



Le problème est que cela crée beaucoup de sous tableaux, d'autant plus que je répète ce genre de calculs pour plusieurs modalités (autre que l'analyse annuelle).
Je ne sais pas vraiment comment m'y prendre autrement car je ne maitrise pas très bien les fonctions et les conditions.

Je vous remercie d'avance pour votre aide.

Pierre-Yves Berrard
Messages : 1029
Enregistré le : 12 Jan 2016, 23:30

Re: Fonction pour le calcul de valeurs uniques par années

Messagepar Pierre-Yves Berrard » 09 Mar 2023, 10:14

Bonjour,

La première étape va être d'ajouter une variable Annee à votre base de données.
PY

Fiona_Moral
Messages : 6
Enregistré le : 23 Jan 2023, 16:40

Re: Fonction pour le calcul de valeurs uniques par années

Messagepar Fiona_Moral » 09 Mar 2023, 13:44

Merci pour votre réponse.
J'en ai effectivement rajouté une.

Pierre-Yves Berrard
Messages : 1029
Enregistré le : 12 Jan 2016, 23:30

Re: Fonction pour le calcul de valeurs uniques par années

Messagepar Pierre-Yves Berrard » 09 Mar 2023, 19:40

Ensuite, le plus simple sans utiliser de package particulier est sûrement quelque chose de ce genre :

Code : Tout sélectionner

tapply(
  Data$Ref_Dossier,
  Data$Annee,
  function(x) length(unique(x))
)
PY

Fiona_Moral
Messages : 6
Enregistré le : 23 Jan 2023, 16:40

Re: Fonction pour le calcul de valeurs uniques par années

Messagepar Fiona_Moral » 10 Mar 2023, 07:30

Ça fonctionne ! Merci beaucoup !
Bonne journée.


Retourner vers « Questions en cours »

Qui est en ligne

Utilisateurs parcourant ce forum : Aucun utilisateur enregistré et 1 invité