2021-04-02 06:32:12 +00:00
|
|
|
|
---
|
|
|
|
|
title: "R"
|
|
|
|
|
date: 2021-04-01T11:48:56+02:00
|
|
|
|
|
tags:
|
|
|
|
|
- R
|
|
|
|
|
categories :
|
|
|
|
|
- R
|
2021-04-12 08:34:54 +00:00
|
|
|
|
draft: false
|
2021-04-02 06:32:12 +00:00
|
|
|
|
description : "analyse des ventes"
|
|
|
|
|
slug : "analyse des ventes"
|
2021-04-12 08:34:54 +00:00
|
|
|
|
image: "R_logo.png"
|
2021-04-02 06:32:12 +00:00
|
|
|
|
---
|
|
|
|
|
|
|
|
|
|
# Analyse des ventes
|
|
|
|
|
Dans une entreprise commerciale, il est souvent pertinent de suivre la vente d'une catégorie particulière.
|
|
|
|
|
Ici nous allons nous intéresser à la vente des boissons à 20%
|
|
|
|
|
|
|
|
|
|
## Le modèle de données
|
|
|
|
|
Le fichier csv qui sert de support est comme suit :
|
|
|
|
|
jour,date,total.TTC.10,total.TTC.20
|
|
|
|
|
|
|
|
|
|
Les dates sont au format JJ/MM/AAAA
|
|
|
|
|
Exemple de données :
|
|
|
|
|
|
|
|
|
|
1 jour,date,total TTC 10 %,total TTC 20 %
|
|
|
|
|
2 samedi,01/04/17,"458,5","7,6"
|
|
|
|
|
3 dimanche,02/04/17,"323,35",
|
|
|
|
|
4 lundi,03/04/17,,
|
|
|
|
|
5 mardi,04/04/17,176,
|
|
|
|
|
6 mercredi,05/04/17,"289,6","6,8"
|
|
|
|
|
7 jeudi,06/04/17,"329,5",
|
|
|
|
|
|
2021-04-12 08:34:54 +00:00
|
|
|
|
## Première étape : charger le fichier csv
|
|
|
|
|
{{< highlight R>}}
|
|
|
|
|
Database <- read.csv(file.choose(), header = TRUE, sep= ",", encoding="UTF-8")
|
|
|
|
|
{{< /highlight >}}
|
2021-04-02 06:32:12 +00:00
|
|
|
|
|
|
|
|
|
On vérifie la qualité du chargement :
|
2021-04-12 08:34:54 +00:00
|
|
|
|
* Les entêtes
|
|
|
|
|
{{< highlight R>}}
|
|
|
|
|
> names(Database)
|
|
|
|
|
[1] "jour" "date" "total.TTC.10.." "total.TTC.20.."
|
|
|
|
|
{{< /highlight >}}
|
|
|
|
|
|
|
|
|
|
* Le nombre de colonnes et le nombre de lignes :
|
|
|
|
|
{{< highlight R >}}
|
|
|
|
|
> dim(Database)
|
2021-04-02 06:32:12 +00:00
|
|
|
|
[1] 365 4
|
2021-04-12 08:34:54 +00:00
|
|
|
|
{{< /highlight >}}
|
|
|
|
|
|
|
|
|
|
## On vérifie les premières lignes
|
2021-04-02 06:32:12 +00:00
|
|
|
|
|
2021-04-12 08:34:54 +00:00
|
|
|
|
{{< highlight R >}}
|
2021-04-02 06:32:12 +00:00
|
|
|
|
> head(Database)
|
|
|
|
|
jour date total.TTC.10.. total.TTC.20..
|
|
|
|
|
1 samedi 01/04/17 458,5 7,6
|
|
|
|
|
2 dimanche 02/04/17 323,35
|
|
|
|
|
3 lundi 03/04/17
|
|
|
|
|
4 mardi 04/04/17 176
|
|
|
|
|
5 mercredi 05/04/17 289,6 6,8
|
|
|
|
|
6 jeudi 06/04/17 329,5
|
2021-04-12 08:34:54 +00:00
|
|
|
|
{{< /highlight >}}
|
2021-04-02 06:32:12 +00:00
|
|
|
|
|
|
|
|
|
|
2021-04-12 08:34:54 +00:00
|
|
|
|
## Sélectionner que les mardis :
|
|
|
|
|
{{< highlight R >}}
|
|
|
|
|
subset(Database, Database$jour %in% "mardi")
|
|
|
|
|
{{< /highlight >}}
|
|
|
|
|
|
|
|
|
|
## Passer la colonne date au format YYYY-MM-DD
|
|
|
|
|
* Pour changer le format de la date on a besoin du package **lubridate**
|
|
|
|
|
{{< highlight R >}}
|
2021-04-02 06:32:12 +00:00
|
|
|
|
install.packages('lubridate')
|
|
|
|
|
library(lubridate)
|
|
|
|
|
dmy(Database$date)
|
2021-04-12 08:34:54 +00:00
|
|
|
|
{{< /highlight >}}
|
2021-04-02 06:32:12 +00:00
|
|
|
|
|
2021-04-12 08:34:54 +00:00
|
|
|
|
## Regrouper les lignes pour n'avoir qu'un cumul par mardi
|
|
|
|
|
* On a besoin de 2 paquets supplémentaires
|
|
|
|
|
{{< highlight R >}}
|
2021-04-02 06:32:12 +00:00
|
|
|
|
install.packages("magrittr") # pour avoir accés à la fonction %>%
|
|
|
|
|
library(magrittr)
|
|
|
|
|
install.packages("dplyr") # pour avoir la fonction group_by
|
|
|
|
|
library(dplyr)
|
2021-04-12 08:34:54 +00:00
|
|
|
|
{{< /highlight >}}
|