Caroline Patenaude
Bibliothécaire - Bibliothèque des lettres et sciences humaines
# Chargement des modules nécessaires
library(car)
library(questionr)
library(psych)
library(Hmisc)
# Ajouter la fonction de téléchargement si nécessaire:
# install.packages("car", dependencies=TRUE)
# install.packages("questionr", dependencies=TRUE)
# install.packages("psych", dependencies=TRUE)
# install.packages("Hmisc", dependencies=TRUE)
# Téléchargement de la base de données hdv2003 du module questionr
# (Extrait de l'enquête "Histoire de vie" de l'Insee - https://www.insee.fr/fr/statistiques/2532244)
data(hdv2003)
# Copie de la base de données dans un objet (datatable) nommé bd
bd <- hdv2003
## id age sexe
## Min. : 1.0 Min. :18.00 Homme: 899
## 1st Qu.: 500.8 1st Qu.:35.00 Femme:1101
## Median :1000.5 Median :48.00
## Mean :1000.5 Mean :48.16
## 3rd Qu.:1500.2 3rd Qu.:60.00
## Max. :2000.0 Max. :97.00
##
## nivetud poids
## Enseignement technique ou professionnel court :463 Min. : 78.08
## Enseignement superieur y compris technique superieur:441 1st Qu.: 2221.82
## Derniere annee d'etudes primaires :341 Median : 4631.19
## 1er cycle :204 Mean : 5535.61
## 2eme cycle :183 3rd Qu.: 7626.53
## (Other) :256 Max. :31092.14
## NA's :112
## occup qualif freres.soeurs
## Exerce une profession:1049 Employe :594 Min. : 0.000
## Chomeur : 134 Ouvrier qualifie :292 1st Qu.: 1.000
## Etudiant, eleve : 94 Cadre :260 Median : 2.000
## Retraite : 392 Ouvrier specialise :203 Mean : 3.283
## Retire des affaires : 77 Profession intermediaire:160 3rd Qu.: 5.000
## Au foyer : 171 (Other) :144 Max. :22.000
## Autre inactif : 83 NA's :347
## clso relig
## Oui : 936 Pratiquant regulier :266
## Non :1037 Pratiquant occasionnel :442
## Ne sait pas: 27 Appartenance sans pratique :760
## Ni croyance ni appartenance:399
## Rejet : 93
## NSP ou NVPR : 40
##
## trav.imp trav.satisf hard.rock lecture.bd
## Le plus important : 29 Satisfaction :480 Non:1986 Non:1953
## Aussi important que le reste:259 Insatisfaction:117 Oui: 14 Oui: 47
## Moins important que le reste:708 Equilibre :451
## Peu important : 52 NA's :952
## NA's :952
##
##
## peche.chasse cuisine bricol cinema sport heures.tv
## Non:1776 Non:1119 Non:1147 Non:1174 Non:1277 Min. : 0.000
## Oui: 224 Oui: 881 Oui: 853 Oui: 826 Oui: 723 1st Qu.: 1.000
## Median : 2.000
## Mean : 2.247
## 3rd Qu.: 3.000
## Max. :12.000
## NA's :5
## Min. 1st Qu. Median Mean 3rd Qu. Max.
## 18.00 35.00 48.00 48.16 60.00 97.00
## Exerce une profession Chomeur Etudiant, eleve
## 1049 134 94
## Retraite Retire des affaires Au foyer
## 392 77 171
## Autre inactif
## 83
# Fonctions diverses permettant d'explorer les indicateurs de centralité
# et de dispersion pour variable quantitative
# Toujours ajouter na.rm=T en argument
median(bd$heures.tv, na.rm=TRUE)
## [1] 2
## [1] 2.246566
## [1] 12
## [1] 0
## [1] 4481.9
## [1] 0 12
## [1] 3.153653
## [1] 1.775853
## 0% 25% 50% 75% 100%
## 0 1 2 3 12
## [1] 1.308538
## [1] 3.230284
### Pour appliquer une fonction sur plusieurs variables à la fois
apply(bd[ ,c("age", "heures.tv","freres.soeurs")], na.rm=TRUE, MARGIN=2, FUN=mean)
## age heures.tv freres.soeurs
## 48.157000 2.246566 3.283000
# c() indique les variables à utiliser dans le calcul
# MARGIN=2: calcul à travers les participants (ici moyenne de colonnes), =1 est à travers les rangées
# FUN=mean: la fonction à appliquer, pourrait être n'importe laquelle comme somme, variance...
##
## 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 18 22
## 167 407 427 284 210 151 99 94 52 37 21 21 8 10 4 4 1 2 1
tb.cat <- table(bd$qualif) # var quali (résultat pareil à summary())
# Exclu NA par défaut, sinon il faut utiliser l’argument useNA ="always" ou "ifany"
# On place la table dans un nouvel objet pour pouvoir lui appliquer d'autres opérations
##
## Ouvrier specialise Ouvrier qualifie Technicien
## 0.12280702 0.17664852 0.05202662
## Profession intermediaire Cadre Employe
## 0.09679371 0.15728978 0.35934664
## Autre
## 0.03508772
##
## Ouvrier specialise Ouvrier qualifie Technicien
## 12 18 5
## Profession intermediaire Cadre Employe
## 10 16 36
## Autre
## 4
## n % val%
## Ouvrier specialise 203 10.2 12.3
## Ouvrier qualifie 292 14.6 17.7
## Technicien 86 4.3 5.2
## Profession intermediaire 160 8.0 9.7
## Cadre 260 13.0 15.7
## Employe 594 29.7 35.9
## Autre 58 2.9 3.5
## NA 347 17.3 NA
### Fonction freq: nombreux arguments utiles possibles
freq(bd$qualif, cum = TRUE, total = TRUE, sort = "inc", digits = 0, exclude = NA)
## n % %cum
## Autre 58 4 4
## Technicien 86 5 9
## Profession intermediaire 160 10 18
## Ouvrier specialise 203 12 31
## Cadre 260 16 46
## Ouvrier qualifie 292 18 64
## Employe 594 36 100
## Total 1653 100 100
# cum: afficher ou non les % cumulés
# total: ajouter les effectifs totaux
# sort: trier le tableau par fréquence croissante (sort="inc") ou décroissante (sort="dec")
# digits: arrondir
# exclude: exclure valeurs manquantes
tb <-table(bd$trav.satis, bd$sexe)
# pour une table à plus de deux niveaux, simplement ajouter une variable additionnelle
##
## Homme Femme
## Satisfaction 233 247
## Insatisfaction 61 56
## Equilibre 226 225
##
## Homme Femme Sum
## Satisfaction 233 247 480
## Insatisfaction 61 56 117
## Equilibre 226 225 451
## Sum 520 528 1048
##
## Homme Femme Total
## Satisfaction 22.2 23.6 45.8
## Insatisfaction 5.8 5.3 11.2
## Equilibre 21.6 21.5 43.0
## Total 49.6 50.4 100.0
##
## Homme Femme
## Satisfaction 0.4480769 0.4678030
## Insatisfaction 0.1173077 0.1060606
## Equilibre 0.4346154 0.4261364
##
## Homme Femme Ensemble
## Satisfaction 44.8% 46.8% 45.8%
## Insatisfaction 11.7% 10.6% 11.2%
## Equilibre 43.5% 42.6% 43.0%
## Total 100.0% 100.0% 100.0%
##
## Homme Femme Total
## Satisfaction 49% 51% 100%
## Insatisfaction 52% 48% 100%
## Equilibre 50% 50% 100%
## Ensemble 50% 50% 100%
## bd$sexe: Homme
## [1] 48.16129
## ------------------------------------------------------------
## bd$sexe: Femme
## [1] 48.1535
## Homme Femme
## 48.16129 48.15350
## $Homme
##
## Pratiquant regulier Pratiquant occasionnel
## 86 170
## Appartenance sans pratique Ni croyance ni appartenance
## 365 210
## Rejet NSP ou NVPR
## 52 16
##
## $Femme
##
## Pratiquant regulier Pratiquant occasionnel
## 180 272
## Appartenance sans pratique Ni croyance ni appartenance
## 395 189
## Rejet NSP ou NVPR
## 41 24
## $Homme
## n % val%
## Pratiquant regulier 86 9.6 9.6
## Pratiquant occasionnel 170 18.9 18.9
## Appartenance sans pratique 365 40.6 40.6
## Ni croyance ni appartenance 210 23.4 23.4
## Rejet 52 5.8 5.8
## NSP ou NVPR 16 1.8 1.8
##
## $Femme
## n % val%
## Pratiquant regulier 180 16.3 16.3
## Pratiquant occasionnel 272 24.7 24.7
## Appartenance sans pratique 395 35.9 35.9
## Ni croyance ni appartenance 189 17.2 17.2
## Rejet 41 3.7 3.7
## NSP ou NVPR 24 2.2 2.2
## occup
## sexe Exerce une profession Chomeur Etudiant, eleve Retraite
## Homme 520 54 48 208
## Femme 529 80 46 184
## occup
## sexe Retire des affaires Au foyer Autre inactif
## Homme 39 0 30
## Femme 38 171 53