Calcul des moyennes

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

Issaka Abakar Koumato
Messages : 15
Enregistré le : 24 Sep 2018, 22:00

Calcul des moyennes

Messagepar Issaka Abakar Koumato » 24 Jan 2019, 14:04

Bonjour j'ai des données sous cette forme :

Annees Mois TMao
1980 1 NA
1980 2 NA
1980 3 NA
1980 4 NA
1980 5 NA
1980 6 NA
1980 7 NA
1980 8 NA
1980 9 NA
1980 10 28.58
1980 11 25.57
1980 12 34.74
1981 1 33.54
1981 2 20.64
1981 3 25.01
1981 4 28.07
1981 5 22.89
... 7 33.89
... 9 31.63
... 12 23.33
1982 1 45.65
1982 2 33.12
1982 3 12.18
... 7 24.24
... 9 41.19
... 12 11.12
1983 1 23.21
1983 2 34.55
1983 3 39.08
... 7 35.89
... 9 41.90
... 12 37.21
1984 1 50.19
1984 2 31.98
1984 3 20.76
... 7 45.21
... 9 22.08
... 12 27.33
1985 1 10.10
1985 2 23.18
1985 3 18.60
... 7 21.70
... 9 41.23
... 12 20.90
1986 1 16.46
1986 2 29.00
1986 3 19.17
... 7 29.60
... 9 22.11
... 12 44.55
1987 1 31.63
1987 2 22.00
1987 3 34.67
... 7 47.48
... 9 9.90
... 12 7.89
1988 1 31.33
1988 2 22.19
1988 3 27.89
... 7 23.89
... 9 33.28
... 12 34.89
1989 1 28.90
1989 2 25.28
1989 3 30.90
... 7 25.14
... 9 23.10
... 12 13.22
1990 1 24.12
1990 2 23.24
1990 3 21.10
... 7 24.78
... 9 23.12
... 12 21.19
1991 1 34.12
1991 2 12.10
1991 3 24.32
... 7 27.34
... 9 32.12
... 12 23.13
... 1 28.90
... 2 31.10
... 3 27.12
... 4 21.19
... 5 24.12
... 6 30.11
... 7 21.18
... 8 23.14
... 9 24.12
... 10 17.80
... 11 23.22
... 12 24.78
2017 1 25.25
2017 2 25.89
2017 3 27.12
2017 4 12.78
2017 5 24.12
2017 6 25.19
2017 7 17.89
2017 8 19.10
2017 9 20.02
2017 10 26.09
2017 11 NA
2017 12 NA

Voici ma question : comment faire pour calculer la moyenne du mois de Janvier dans tout les années? même question pour tout les mois dans chaque année. Le nombre des données commence de 1 jusqu'à 456. Tellement que c'est long j'ai préféré utiliser les points (...).
Merci d'avance pour vos propositions.

Eric Casellas
Messages : 767
Enregistré le : 06 Jan 2009, 14:59

Re: Calcul des moyennes

Messagepar Eric Casellas » 24 Jan 2019, 14:55

Bonjour,

Une proposition par l'utilisation de la fonction by (sous hypothèse qu'il n'y ai pas de trous ou de répétitions de dates...) :

Code : Tout sélectionner

XX <- data.frame(Annees=c(rep(2000, 12), rep(2001, 12), rep(2002, 12), rep(2003, 12), rep(2004, 12), rep(2005, 12), rep(2006, 12), rep(2007, 12), rep(2008, 12), rep(2009, 12)),
                 Mois=1:12,
                 TMao=rnorm(120),
                 stringsAsFactors = FALSE)

by(XX$TMao, XX$Mois, mean, na.rm=TRUE)


Eric
Eric

Eric Wajnberg
Messages : 776
Enregistré le : 11 Aoû 2008, 15:37
Contact :

Re: Calcul des moyennes

Messagepar Eric Wajnberg » 26 Jan 2019, 06:51

Il y a plusieurs solutions, notamment avec aggregate(), avec tapply(), etc.

Voici la solution avec tapply() (en imaginant que les données sont dans un objet de nom "data") :

Code : Tout sélectionner

dataJanvier=data[data$Mois==1,]
attach(dataJanvier)
tapply(TMao,Annees,mean)
  ...  1980  1981  1982  1983  1984  1985  1986  1987  1988  1989  1990  1991  2017
28.90    NA 33.54 45.65 23.21 50.19 10.10 16.46 31.63 31.33 28.90 24.12 34.12 25.25

HTH, Eric.


Retourner vers « Questions en cours »

Qui est en ligne

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