Donnée : information sur un individu.
Individu : unité statistique fondamentale. Entité à propos de laquelle on collecte des informations (également observation).
Variable : série de données homogènes, collectée sur un ensemble d’individu, renseignant la même information.
Série de variables à propos des mêmes individus.
Une base de donnée est un tableau contenant :
# Chargement du tidyverse
library(tidyverse)
## ── Attaching packages ────────────────────────────────────── tidyverse 1.2.1 ──
## ✔ ggplot2 3.1.0 ✔ purrr 0.3.0
## ✔ tibble 2.0.1 ✔ dplyr 0.7.8
## ✔ tidyr 0.8.2 ✔ stringr 1.3.1
## ✔ readr 1.3.1 ✔ forcats 0.3.0
## ── Conflicts ───────────────────────────────────────── tidyverse_conflicts() ──
## ✖ dplyr::filter() masks stats::filter()
## ✖ dplyr::lag() masks stats::lag()
# Lire une base de données depuis un fichier
jardin1 <- read_csv('data/jardin1.csv')
## Parsed with column specification:
## cols(
## .default = col_character()
## )
## See spec(...) for full column specifications.
# Avoir un aperçu d'une base de données
glimpse(jardin1)
## Observations: 43
## Variables: 31
## $ creation_date <chr> "2010", "Nov 2008 (en conseil de Quartier)"…
## $ createurs_nb <chr> "30", "10", "5", "7 ou 8", "10", "Environ 1…
## $ createurs_vous <chr> "Oui", "Oui", "Oui", "Oui", "Oui", "Non", "…
## $ createurs_nb_ajd <chr> "9", "10", "4", "5", "Aucun", "x", "5", "4"…
## $ emplacement <chr> "Parc de Choisy", "107 faubourg Saint-Denis…
## $ proximite_logements <chr> "Oui", "Presque tous", "Oui", "Oui", "Oui",…
## $ proprietaire <chr> "Ville de Paris", "Ville de Paris", "Ville …
## $ bail <chr> "Convention 3 ans renouvelable", "Conventio…
## $ adhesion_nb <chr> "35", "x", "20", "40", "49", "41 (2013) 57 …
## $ adhesion_hf <chr> "2 H / 35", "x", "Moitié-moitié", "60% F / …
## $ adhesion_criteres <chr> "Non", "Non", "Non", "Non", "Non", "Indiv :…
## $ adhesion_montant <chr> "25 €/an", "20 €/an", "20 €/an", "5 € /pers…
## $ jardiniers_1an <chr> "environ 40%", "x", "Trop récent", "Les 3/4…
## $ parcelles_adhesion <chr> "Non", "x", "Oui", "Non jardinage coll", "N…
## $ surface <chr> "70m2", "250 m2", "100 m2", "500m2", "500m2…
## $ parcelles_collectif <chr> "Collectif", "Les 2", "Collectif", "Collect…
## $ parcelles_nb <chr> "x", "x", "x", "x", "20", "x", "x", "12", "…
## $ equipements <chr> "Meubles de jardins / Abri collectif / Eau …
## $ produits <chr> "Fleurs, Fruits, Légumes, Herbes aromatique…
## $ produits_destination <chr> "Partage adhérents", "x", "Partage adhérent…
## $ public <chr> "Accès libre", "Accès libre", "Oui 2 perm/s…
## $ jardin_accueil <chr> "Oui 2 perm/semaine", "Oui", "Oui si possib…
## $ evenements <chr> "Fêtes de quartier, Spectacles", "x", "Fête…
## $ structures <chr> "Groupe scolaire, Accueil de jour pour adul…
## $ jardin_type <chr> "Partagé", "Partagé", "Partagé, Familial", …
## $ objectifs <chr> "Création de lien social / Pédagogie / Plai…
## $ commune <chr> "Paris 13ème", "Paris 10ème", "Paris 11ème"…
## $ sexe <chr> "Femme", "Homme", "Homme", "Femme", "Homme"…
## $ age <chr> "60 et 69 ans", "50 et 59 ans", "50 et 59 a…
## $ nationalite <chr> "Française - Ile de France", "Française - P…
## $ metier <chr> "Infirmière", "Architecte", "Artiste", "Ach…
# Voir sous forme d'un tableur dans RStudio
View(jardin1)
# Nombre d'invidus
nrow(jardin1)
## [1] 43
# Nombre de variables
ncol(jardin1)
## [1] 31
# Noms des variables
names(jardin1)
## [1] "creation_date" "createurs_nb" "createurs_vous"
## [4] "createurs_nb_ajd" "emplacement" "proximite_logements"
## [7] "proprietaire" "bail" "adhesion_nb"
## [10] "adhesion_hf" "adhesion_criteres" "adhesion_montant"
## [13] "jardiniers_1an" "parcelles_adhesion" "surface"
## [16] "parcelles_collectif" "parcelles_nb" "equipements"
## [19] "produits" "produits_destination" "public"
## [22] "jardin_accueil" "evenements" "structures"
## [25] "jardin_type" "objectifs" "commune"
## [28] "sexe" "age" "nationalite"
## [31] "metier"
Individu au sens statistique est une entité, mais pas nécessairement une personne.
Autres possibilités fréquentes
Mais aussi plus généralement une unité d’observation
# Voir l'individu 4
jardin1[1, ]
# Sélectionner les individus 1, 4 et 34
jardin1[c(1, 4, 34),]
# Créer sa propre variable avec un vecteur
c(1999, 1998, 2000)
## [1] 1999 1998 2000
# Ou bien :
c('Paris', 'Marseille', 'Lille')
## [1] "Paris" "Marseille" "Lille"
# Dans une base de données
jardin1$commune
## [1] "Paris 13ème" "Paris 10ème"
## [3] "Paris 11ème" "Paris 20ème"
## [5] "Paris 19ème" "Paris 13ème"
## [7] "Paris 13ème" "Paris 14ème"
## [9] "Paris 11ème" "Paris 20ème"
## [11] "Paris 19ème" "Paris 20ème"
## [13] "Aubervilliers" "Colombes"
## [15] "Bagnolet" "Sceaux"
## [17] "Aubervilliers" "Nanterre"
## [19] "Bagnolet" "Saâcy sur Marne"
## [21] "Cachan" "Paris 17ème"
## [23] "Saulx et Chilly" "Paris 3ème"
## [25] "Paris 18ème" "Gentilly"
## [27] "Dugny" "Paris 20ème"
## [29] "Arcueil" "Paris 19ème"
## [31] "Paris 10ème" "Chennevières sur Marne"
## [33] "Le Pré-St-Gervais" "Bagnolet"
## [35] "Paris 15ème" "Nanterre"
## [37] "Paris 12" "Paris 18"
## [39] "Paris 18" "Paris 18e"
## [41] "Aubervilliers" "Montreuil (93)"
## [43] "Paris 18e"
Quelle est la nature de l’information récoltée ?
Mesure numérique. Composée d’une mesure (un nombre) et d’une unité.
# Créer sa propre variable quantitative avec un vecteur
c(1999, 1998, 2000)
## [1] 1999 1998 2000
# Ou bien, dans une base de données :
library(questionr)
data(hdv2003)
glimpse(hdv2003$age)
## int [1:2000] 28 23 59 34 71 35 60 47 20 28 ...
Également variable nominale ou variable catégorielle. Les valeurs sont des catégories.
Modalités = ensemble des valeurs possibles pour une variable qualitative.
Cas particulier : variables qualitatives ordonnées (parfois opposées aux variables catégorielles) = les modalités peuvent être classées dans un ordre logique.
# Peut-on créer sa propre variable qualitative avec un vecteur ?
diplome1 <- c('Licence', 'Licence', 'Bac', 'Master', 'Bac', 'Licence', 'Licence', 'Doctorat')
# Ça fonctionne, mais pas complètement (ordre des modalités)
table(diplome1)
## diplome1
## Bac Doctorat Licence Master
## 2 1 4 1
# R a un type de vecteur spécialisé, les factors :
diplome2 <- factor(diplome1, levels = c('Bac', 'Licence', 'Master', 'Doctorat'))
# Maintenant, on obtient le résultat attendu :
table(diplome2)
## diplome2
## Bac Licence Master Doctorat
## 2 4 1 1
# Dans R, les modalités s'appellent des levels :
levels(diplome2)
## [1] "Bac" "Licence" "Master" "Doctorat"
# On peut aussi prendre une variable qualitative d'une base de données
levels(hdv2003$nivetud)
## [1] "N'a jamais fait d'etudes"
## [2] "A arrete ses etudes, avant la derniere annee d'etudes primaires"
## [3] "Derniere annee d'etudes primaires"
## [4] "1er cycle"
## [5] "2eme cycle"
## [6] "Enseignement technique ou professionnel court"
## [7] "Enseignement technique ou professionnel long"
## [8] "Enseignement superieur y compris technique superieur"
table(hdv2003$nivetud)
##
## N'a jamais fait d'etudes
## 39
## A arrete ses etudes, avant la derniere annee d'etudes primaires
## 86
## Derniere annee d'etudes primaires
## 341
## 1er cycle
## 204
## 2eme cycle
## 183
## Enseignement technique ou professionnel court
## 463
## Enseignement technique ou professionnel long
## 131
## Enseignement superieur y compris technique superieur
## 441