0% ont trouvé ce document utile (0 vote)
16 vues18 pages

Importation et Analyse de Données R

Transféré par

JALAL FAHL
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats DOCX, PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
16 vues18 pages

Importation et Analyse de Données R

Transféré par

JALAL FAHL
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats DOCX, PDF, TXT ou lisez en ligne sur Scribd

Tableaux Statistiques

Importer une base de données à partir d’Excel


Charger les bibliothèques nécessaires :
Avant d’importer les données, vous devez charger les bibliothèques appropriées. Dans ce
cas, ‘readxl’ est couramment utilisé pour lire des fichiers Excel.
# Fixer un miroir CRAN
options(repos = c(CRAN = "[Link]

# Installer readxl si ce n'est pas déjà fait


#[Link]("readxl")

# Charger la bibliothèque
library(readxl)

Importer les données :


Vous pouvez utiliser la fonction ‘read_excel()’ pour importer vos données depuis un fichier
Excel. Voici un exemple d’importation :
# Importer les données depuis un fichier Excel
data <- read_excel("/Users/[Link]-ext/Downloads/[Link]")

# Afficher les premières lignes des données importées


head(data)

## # A tibble: 6 × 8
## id Milieu Région_12 Sexe Age Etat_matrimonial
Niveau_Diplome Revenu
## <dbl> <chr> <chr> <chr> <dbl> <chr> <chr>
<dbl>
## 1 1 Urbain Dakhla-Oued E… Fémi… 17 Marié(e) Sans
diplôme 25794
## 2 2 Urbain Dakhla-Oued E… Masc… 26 Marié(e) Niveau
moyen 11498
## 3 3 Rural Dakhla-Oued E… Fémi… 1 Célibataire Age
moins de … 42656
## 4 4 Urbain Oriental Fémi… 31 Marié(e) Niveau
moyen 11764
## 5 5 Urbain Oriental Masc… 36 Marié(e) Niveau
moyen 22015
## 6 6 Urbain Oriental Masc… 0 Célibataire Age
moins de … 46669
Créer une base de données avec un data frame dans R
Si vous souhaitez créer manuellement une base de données sous forme de data frame, voici
comment procéder : # Créer un data frame :
# Créer un data frame manuellement
df <- [Link](
Milieu = c("Urbain", "Urbain", "Rural", "Urbain", "Urbain",
"Urbain", "Urbain", "Rural", "Rural", "Rural", "Urbain", "Urbain",
"Urbain", "Urbain", "Rural", "Rural", "Urbain", "Rural",
"Rural", "Urbain"),
Région_12 = c("Dakhla-Oued Ed Dahab", "Dakhla-Oued Ed Dahab",
"Dakhla-Oued Ed Dahab", "Oriental", "Oriental", "Oriental",
"Oriental", "Fès-Meknès", "Fès-Meknès", "Fès-Meknès", "Fès-Meknès",
"Casablanca-Settat", "Casablanca-Settat", "Casablanca-Settat",
"Casablanca-Settat", "Rabat-Salè-Kénitra", "Rabat-Salè-Kénitra",
"Rabat-Salè-Kénitra", "Rabat-Salè-Kénitra", "Marrakech-Safi"),
Sexe = c("Féminin", "Masculin", "Féminin", "Féminin", "Masculin",
"Masculin", "Féminin", "Masculin", "Féminin", "Féminin", "Masculin",
"Masculin", "Féminin", "Féminin", "Masculin", "Féminin", "Masculin",
"Féminin", "Féminin", "Masculin"),
Age = c(17, 26, 1, 31, 36, 0, 27, 38, 2, 30, 34, 6, 11, 41, 42, 2,
9, 47, 28, 33),
Etat_matrimonial = c("Marié(e)", "Marié(e)", "Célibataire",
"Marié(e)", "Marié(e)", "Célibataire", "Marié(e)", "Marié(e)",
"Célibataire", "Marié(e)", "Marié(e)", "Célibataire", "Célibataire",
"Marié(e)", "Marié(e)", "Célibataire", "Célibataire", "Divorcé(e)",
"Marié(e)", "Marié(e)"),
Niveau_Diplome = c("Sans diplôme", "Niveau moyen", "Age moins de 10
ans", "Niveau moyen", "Niveau moyen", "Age moins de 10 ans", "Niveau
supérieur", "Niveau supérieur", "Age moins de 10 ans", "Niveau
supérieur", "Niveau supérieur", "Age moins de 10 ans", "Sans diplôme",
"Niveau supérieur", "Niveau supérieur", "Age moins de 10 ans", "Age
moins de 10 ans", "Sans diplôme", "Niveau moyen", "Niveau moyen"),
Revenu = c(25794, 11498, 42656, 11764, 22015, 46669, 54949, 45539,
25423, 6367, 39560, 19426, 25009, 32517, 10576, 27553, 54200, 17237,
13408, 21058)
)

# Afficher le data frame


print(df)

## Milieu Région_12 Sexe Age Etat_matrimonial


## 1 Urbain Dakhla-Oued Ed Dahab Féminin 17 Marié(e)
## 2 Urbain Dakhla-Oued Ed Dahab Masculin 26 Marié(e)
## 3 Rural Dakhla-Oued Ed Dahab Féminin 1 Célibataire
## 4 Urbain Oriental Féminin 31 Marié(e)
## 5 Urbain Oriental Masculin 36 Marié(e)
## 6 Urbain Oriental Masculin 0 Célibataire
## 7 Urbain Oriental Féminin 27 Marié(e)
## 8 Rural Fès-Meknès Masculin 38 Marié(e)
## 9 Rural Fès-Meknès Féminin 2 Célibataire
## 10 Rural Fès-Meknès Féminin 30 Marié(e)
## 11 Urbain Fès-Meknès Masculin 34 Marié(e)
## 12 Urbain Casablanca-Settat Masculin 6 Célibataire
## 13 Urbain Casablanca-Settat Féminin 11 Célibataire
## 14 Urbain Casablanca-Settat Féminin 41 Marié(e)
## 15 Rural Casablanca-Settat Masculin 42 Marié(e)
## 16 Rural Rabat-Salè-Kénitra Féminin 2 Célibataire
## 17 Urbain Rabat-Salè-Kénitra Masculin 9 Célibataire
## 18 Rural Rabat-Salè-Kénitra Féminin 47 Divorcé(e)
## 19 Rural Rabat-Salè-Kénitra Féminin 28 Marié(e)
## 20 Urbain Marrakech-Safi Masculin 33 Marié(e)
## Niveau_Diplome Revenu
## 1 Sans diplôme 25794
## 2 Niveau moyen 11498
## 3 Age moins de 10 ans 42656
## 4 Niveau moyen 11764
## 5 Niveau moyen 22015
## 6 Age moins de 10 ans 46669
## 7 Niveau supérieur 54949
## 8 Niveau supérieur 45539
## 9 Age moins de 10 ans 25423
## 10 Niveau supérieur 6367
## 11 Niveau supérieur 39560
## 12 Age moins de 10 ans 19426
## 13 Sans diplôme 25009
## 14 Niveau supérieur 32517
## 15 Niveau supérieur 10576
## 16 Age moins de 10 ans 27553
## 17 Age moins de 10 ans 54200
## 18 Sans diplôme 17237
## 19 Niveau moyen 13408
## 20 Niveau moyen 21058

# Afficher un résumé statistique des données


summary(df)

## Milieu Région_12 Sexe Age

## Length:20 Length:20 Length:20 Min. :


0.00
## Class :character Class :character Class :character 1st Qu.:
8.25
## Mode :character Mode :character Mode :character
Median :27.50
##
Mean :23.05
## 3rd
Qu.:34.50
##
Max. :47.00
## Etat_matrimonial Niveau_Diplome Revenu
## Length:20 Length:20 Min. : 6367
## Class :character Class :character 1st Qu.:16280
## Mode :character Mode :character Median :25216
## Mean :27661
## 3rd Qu.:40334
## Max. :54949

Voici comment créer les tableaux d’effectifs, d’effectifs cumulés, de fréquences, et de


fréquences cumulées pour chaque variable de votre data frame df.

Variable Milieu
# Effectifs pour 'Milieu'
effectifs_milieu <- table(df$Milieu)
print(effectifs_milieu)

##
## Rural Urbain
## 8 12

# Effectif cumulé pour 'Milieu'


effectifs_cumules_milieu <- cumsum(effectifs_milieu)
print(effectifs_cumules_milieu)

## Rural Urbain
## 8 20

# Fréquences pour 'Milieu'


frequences_milieu <- effectifs_milieu / sum(effectifs_milieu)
print(frequences_milieu)

##
## Rural Urbain
## 0.4 0.6

# Fréquences cumulées pour 'Milieu'


frequences_cumulees_milieu <- cumsum(frequences_milieu)
print(frequences_cumulees_milieu)

## Rural Urbain
## 0.4 1.0

# Créer un tableau
tableau_milieu <- [Link](
Effectif = [Link](effectifs_milieu),
Effectif_Cumulé = effectifs_cumules_milieu,
Fréquence = [Link](frequences_milieu),
Fréquence_Cumulée = frequences_cumulees_milieu
)
print(tableau_milieu)
## Effectif Effectif_Cumulé Fréquence Fréquence_Cumulée
## Rural 8 8 0.4 0.4
## Urbain 12 20 0.6 1.0

Tableau pour la variable Région_12


# Calculs pour 'Région_12'
effectifs_region <- table(df$Région_12)
effectifs_cumules_region <- cumsum(effectifs_region)
frequences_region <- effectifs_region / sum(effectifs_region)
frequences_cumulees_region <- cumsum(frequences_region)

# Créer un tableau
tableau_region <- [Link](
Effectif = [Link](effectifs_region),
Effectif_Cumulé = effectifs_cumules_region,
Fréquence = [Link](frequences_region),
Fréquence_Cumulée = frequences_cumulees_region
)
print(tableau_region)

## Effectif Effectif_Cumulé Fréquence


Fréquence_Cumulée
## Casablanca-Settat 4 4 0.20
0.20
## Dakhla-Oued Ed Dahab 3 7 0.15
0.35
## Fès-Meknès 4 11 0.20
0.55
## Marrakech-Safi 1 12 0.05
0.60
## Oriental 4 16 0.20
0.80
## Rabat-Salè-Kénitra 4 20 0.20
1.00

Tableau pour la variable Sexe


# Calculs pour 'Sexe'
effectifs_sexe <- table(df$Sexe)
effectifs_cumules_sexe <- cumsum(effectifs_sexe)
frequences_sexe <- effectifs_sexe / sum(effectifs_sexe)
frequences_cumulees_sexe <- cumsum(frequences_sexe)

# Créer un tableau
tableau_sexe <- [Link](
Effectif = [Link](effectifs_sexe),
Effectif_Cumulé = effectifs_cumules_sexe,
Fréquence = [Link](frequences_sexe),
Fréquence_Cumulée = frequences_cumulees_sexe
)
print(tableau_sexe)
## Effectif Effectif_Cumulé Fréquence Fréquence_Cumulée
## Féminin 11 11 0.55 0.55
## Masculin 9 20 0.45 1.00

Tableau pour la variable Age (avec classes)


# Créer des classes d'âge
classes_age <- cut(df$Age, breaks = seq(0, 50, by = 4), right = FALSE)

# Calculs pour 'Age'


effectifs_age <- table(classes_age)
effectifs_cumules_age <- cumsum(effectifs_age)
frequences_age <- effectifs_age / sum(effectifs_age)
frequences_cumulees_age <- cumsum(frequences_age)

# Créer un tableau
tableau_age <- [Link](
Effectif = effectifs_age,
Effectif_Cumulé = effectifs_cumules_age,
Fréquence = frequences_age,
Fréquence_Cumulée = frequences_cumulees_age
)
print(tableau_age)

## Effectif.classes_age [Link] Effectif_Cumulé


## [0,4) [0,4) 4 4
## [4,8) [4,8) 1 5
## [8,12) [8,12) 2 7
## [12,16) [12,16) 0 7
## [16,20) [16,20) 1 8
## [20,24) [20,24) 0 8
## [24,28) [24,28) 2 10
## [28,32) [28,32) 3 13
## [32,36) [32,36) 2 15
## [36,40) [36,40) 2 17
## [40,44) [40,44) 2 19
## [44,48) [44,48) 1 20
## Fréquence.classes_age Fré[Link] Fréquence_Cumulée
## [0,4) [0,4) 0.20 0.20
## [4,8) [4,8) 0.05 0.25
## [8,12) [8,12) 0.10 0.35
## [12,16) [12,16) 0.00 0.35
## [16,20) [16,20) 0.05 0.40
## [20,24) [20,24) 0.00 0.40
## [24,28) [24,28) 0.10 0.50
## [28,32) [28,32) 0.15 0.65
## [32,36) [32,36) 0.10 0.75
## [36,40) [36,40) 0.10 0.85
## [40,44) [40,44) 0.10 0.95
## [44,48) [44,48) 0.05 1.00
Tableau pour la variable Etat-matrimonial
# Calculs pour 'Etat_matrimonial'
effectifs_etat <- table(df$Etat_matrimonial)
effectifs_cumules_etat <- cumsum(effectifs_etat)
frequences_etat <- effectifs_etat / sum(effectifs_etat)
frequences_cumulees_etat <- cumsum(frequences_etat)

# Créer un tableau
tableau_etat <- [Link](
Effectif = [Link](effectifs_etat),
Effectif_Cumulé = effectifs_cumules_etat,
Fréquence = [Link](frequences_etat),
Fréquence_Cumulée = frequences_cumulees_etat
)
print(tableau_etat)

## Effectif Effectif_Cumulé Fréquence Fréquence_Cumulée


## Célibataire 7 7 0.35 0.35
## Divorcé(e) 1 8 0.05 0.40
## Marié(e) 12 20 0.60 1.00

Tableau pour la variable Niveau_Diplome


# Calculs pour 'Diplome_agregé'
effectifs_diplome <- table(df$Niveau_Diplome)
effectifs_cumules_diplome <- cumsum(effectifs_diplome)
frequences_diplome <- effectifs_diplome / sum(effectifs_diplome)
frequences_cumulees_diplome <- cumsum(frequences_diplome)

# Créer un tableau
tableau_diplome <- [Link](
Effectif = [Link](effectifs_diplome),
Effectif_Cumulé = effectifs_cumules_diplome,
Fréquence = [Link](frequences_diplome),
Fréquence_Cumulée = frequences_cumulees_diplome
)
print(tableau_diplome)

## Effectif Effectif_Cumulé Fréquence


Fréquence_Cumulée
## Age moins de 10 ans 6 6 0.30
0.30
## Niveau moyen 1 7 0.05
0.35
## Niveau moyen 4 11 0.20
0.55
## Niveau supérieur 6 17 0.30
0.85
## Sans diplôme 3 20 0.15
1.00
Tableau pour la variable Revenu (avec classes)
# Créer des classes de revenu
classes_revenu <- cut(df$Revenu, breaks = seq(0, 60000, by = 10000),
right = FALSE)

# Calculs pour 'Revenu'


effectifs_revenu <- table(classes_revenu)
effectifs_cumules_revenu <- cumsum(effectifs_revenu)
frequences_revenu <- effectifs_revenu / sum(effectifs_revenu)
frequences_cumulees_revenu <- cumsum(frequences_revenu)

# Créer un tableau
tableau_revenu <- [Link](
Effectif = effectifs_revenu,
Effectif_Cumulé = effectifs_cumules_revenu,
Fréquence = frequences_revenu,
Fréquence_Cumulée = frequences_cumulees_revenu
)
print(tableau_revenu)

## Effectif.classes_revenu [Link] Effectif_Cumulé


## [0,1e+04) [0,1e+04) 1 1
## [1e+04,2e+04) [1e+04,2e+04) 6 7
## [2e+04,3e+04) [2e+04,3e+04) 6 13
## [3e+04,4e+04) [3e+04,4e+04) 2 15
## [4e+04,5e+04) [4e+04,5e+04) 3 18
## [5e+04,6e+04) [5e+04,6e+04) 2 20
## Fréquence.classes_revenu Fré[Link]
Fréquence_Cumulée
## [0,1e+04) [0,1e+04) 0.05
0.05
## [1e+04,2e+04) [1e+04,2e+04) 0.30
0.35
## [2e+04,3e+04) [2e+04,3e+04) 0.30
0.65
## [3e+04,4e+04) [3e+04,4e+04) 0.10
0.75
## [4e+04,5e+04) [4e+04,5e+04) 0.15
0.90
## [5e+04,6e+04) [5e+04,6e+04) 0.10
1.00

Visualisation
Vous pouvez créer des graphiques pour chaque variable de votre data frame pour visualiser
les effectifs, les fréquences, et les distributions. Voici comment créer des graphiques
adaptés pour toutes les variables de votre data frame :
1- Histogramme de la distribution des âges
# Histogramme de la distribution des âges
hist(df$Age,
main = "Distribution des âges",
xlab = "Âge",
ylab = "Effectif",
col = "lightblue",
border = "black")

2 - Diagramme en barres pour la variable Milieu


# Diagramme en barres pour 'Milieu'
barplot(table(df$Milieu),
main = "Répartition selon le milieu",
xlab = "Milieu",
ylab = "Effectif",
col = "lightgreen",
border = "black")
3- Diagramme en barres pour la variable Région_12
# Diagramme en barres pour 'Région_12'
barplot(table(df$Région_12),
main = "Répartition selon la région",
xlab = "Région",
ylab = "Effectif",
col = "lightcoral",
border = "black",
las = 2)
4- Diagramme en barres pour la variable Sexe
# Diagramme en barres pour 'Sexe'
barplot(table(df$Sexe),
main = "Répartition selon le sexe",
xlab = "Sexe",
ylab = "Effectif",
col = "lightblue",
border = "black")
5 - Diagramme en barres pour la variable Etat_matrimonial
# Diagramme en barres pour 'Etat_matrimonial'
barplot(table(df$Etat_matrimonial),
main = "Répartition selon l'état matrimonial",
xlab = "État matrimonial",
ylab = "Effectif",
col = "lightyellow",
border = "black")
6 - Diagramme en barres pour la variable Diplome_agregé
# Diagramme en barres pour 'Nuveau_Diplome'
barplot(table(df$Niveau_Diplome),
main = "Répartition selon le diplôme",
xlab = "Diplôme",
ylab = "Effectif",
col = "lightpink",
border = "black",
las = 2)
7 - Histogramme pour la variable Revenu
# Histogramme de la distribution des revenus
hist(df$Revenu,
main = "Distribution des revenus",
xlab = "Revenu",
ylab = "Effectif",
col = "lightblue",
border = "black")
8 - Boxplot pour la distribution des revenus
# Boxplot pour la distribution des revenus
boxplot(df$Revenu,
main = "Boxplot des revenus",
ylab = "Revenu",
col = "orange",
border = "black")
9 - Courbe des effectifs cumulés pour les revenus
# Calcul des effectifs cumulés
effectifs_cumules_revenu <- cumsum(table(df$Revenu))

# Graphique des effectifs cumulés


plot([Link](names(effectifs_cumules_revenu)),
effectifs_cumules_revenu,
type = "o",
main = "Effectifs cumulés des revenus",
xlab = "Revenu",
ylab = "Effectif cumulé",
col = "red",
pch = 16)
10 - Courbe des fréquences cumulées (Courbe de Lorenz) pour les
revenus
# Calcul des fréquences cumulées
frequences_revenu <- table(df$Revenu) / sum(table(df$Revenu))
frequences_cumulees_revenu <- cumsum(frequences_revenu)

# Graphique des fréquences cumulées (Courbe de Lorenz)


plot([Link](names(frequences_cumulees_revenu)),
frequences_cumulees_revenu,
type = "o",
main = "Fréquences cumulées des revenus (Courbe de Lorenz)",
xlab = "Revenu",
ylab = "Fréquence cumulée",
col = "blue",
pch = 16)

Vous aimerez peut-être aussi