L'analyse web avec R - Partie 3
L'analyse web avec R - Partie 3
Dans notre dernier article de blog, nous avons décrit comment le logiciel de statistiques R peut être relié à l’outil de tracking Google Analytics. Ce billet vous montrera comment extraire d’autres données de Google Analytics et les enregistrer dans R sous forme de tableaux. En outre, d’autres fonctions de base de R seront présentées étape par étape.
Dans le domaine de l’analyse web, il arrive souvent que le département marketing en ligne ou la direction souhaite connaître les performances en ligne par rapport à leurs objectifs stratégiques, comme par exemple la vente de certains produits ou services par rapport à la semaine précédente.
La première étape consiste à créer deux Data Frames (lien entre les variables et les facteurs ou lien entre les métriques et les dimensions – voir Analyse Web avec R – partie 1) en utilisant le langage de programmation R. Nous partons du principe que Google Analytics est déjà connecté à R.
Ensuite, ces deux Data Frames, qui contiennent les données d’analyse web de la dernière semaine terminée et de la semaine précédente, sont formatées et comparées. Pour cela, les fonctions de calcul de la somme et de la moyenne sont présentées.
En outre, une nouvelle variable (CVR – KPI de performance de l’analyse web) est insérée dans les deux cadres de données.
Pour pouvoir conclure la comparaison de performance, le delta des Data Frames est déduit l’un de l’autre.
Partie A - Combiner les métriques & ; dimension de Google Analytics dans Data Frame
Il convient tout d’abord de déterminer quels sont les KPI nécessaires. Pour simplifier, nous ne prendrons dans cet exemple que les métriques :
- Sessions (sessions)
- Bounce Rate (taux de rebond)
- Transactions
- Revenue (Chiffre d’affaires)
Ceux-ci ont les « noms d’API » suivants dans Google Analytics :
- ga:sessions
- ga:bounceRate
- ga:transactions
- ga:transactionRevenue
L’orthographe est importante, car les requêtes R concernant le paquet Google Analytics utilisé doivent respecter les conventions d’écriture de Google.
La première requête R est donc la suivante :
GA_DataFrame_KW3 <- google_analytics_4(KontoName_ViewID, date_range = c(« 2018-01-21 », « 2018-01-27 »), metrics = c(« sessions », »bounceRate », « transactions », « transactionRevenue »), dimensions = c(« day »))

Figure 1 : Analyse Web avec R – Data Frame avec les données Google Analytics
Pour obtenir les données de la semaine précédente, exécutez à nouveau cette requête, mais vous devez modifier l’intervalle de temps.
La première requête R est donc la suivante :
GA_DataFrame_KW2 <- google_analytics_4(KontoName_ViewID, date_range = c(« 2018-01-14 », « 2018-01-20 »), metrics = c(« sessions », »bounceRate », « transactions », »transactionRevenue »), dimensions = c(« day »))
Partie B - Mise en forme des Data Frames de Google Analytics
Comme la direction, le service de marketing en ligne ou l’analyste web lui-même souhaite présenter les résultats sous sa forme habituelle, les deux Data Frames sont formatées.
(I) En-têtes de colonnes :
a) Editer l'en-tête de colonne dans R - fonction edit :
La manière la plus simple d’éditer l’en-tête de colonne est d’utiliser la commande R « GA_DataFrame_KW3 <- edit(GA_DataFrame_KW3) ».
Après avoir saisi et confirmé la commande R, le tableau avec les dimensions et les métriques Google Analytics apparaît dans l’éditeur de données :

Figure 2 : Analyse Web avec R – Édition d’un en-tête de colonne
On peut y sélectionner et éditer l’en-tête de colonne souhaité en cliquant avec la souris.

Figure 3 : Analyse Web avec R – Ouvrir l’éditeur de variables
Dans ce cas, il convient de modifier :
- sessions in Sessions
- bounceRate in BounceRate
- transactions in Transactions
- transactionRevenue in Revenue
Le nouveau nom des colonnes s’affiche directement dans la R-Console.

Figure 4 : Analyse Web avec R – Édition d’un en-tête de colonne 2
b) Editer un en-tête de colonne dans R - Fonction names
Une autre possibilité d’éditer les en-têtes est de saisir :
names(GA_DataFrame_KW2) <- c(« Tag » , « Sessions », « BounceRate », « Transactions », « Revenue »)
Dans cet exemple, « day » a été transformé en « tag ». Il est important de saisir le nombre exact de noms de colonnes entre les guillemets dans la fonction combine (c()). Même si une seule colonne doit être modifiée, les autres colonnes doivent également être indiquées.
Si l’on ne sait pas à l’avance combien de colonnes sont stockées dans un data frame et quel est leur nom, on peut entrer « names(GA_DataFrame_KW2) » dans la R-Console. Toutes les colonnes existantes et leurs noms apparaissent alors.
Si le nombre de noms de colonnes attribués est inférieur au nombre de colonnes existantes, toutes les colonnes manquantes reçoivent alors la désignation « NA ».

Figure 5 : Analyse Web avec R – désignations manquantes
c) Édition d'un en-tête de colonne dans R - Fonction names [position].
La troisième version présentée dans cet article sur la manière d’éditer les désignations dans un data frame est une extension de la fonction « names ». Plus précisément, il est possible de spécifier la position.
names(GA_DataFrame_KW2) [1] <- « Day ».
En insérant le chiffre 1 dans les crochets, Tag est à nouveau renommé « Day ». Ainsi, seule la première variable -Position 1- est sélectionnée et remplacée ou renommée.
(II) Ajuster les décimales - fonction format.
Pour ajuster les chiffres après la virgule, on utilise la fonction format(x, ….).

Figure 6 : Analyse Web avec R – Édition des décimales
Comme on peut le voir sur le graphique, les valeurs du taux de rebond n’ont plus que 2 chiffres après la virgule. Cela se fait en définissant l’argument dans la fonction digit=4 (seuls 4 caractères sont affichés).
Pourquoi la variable de colonne « BounceRate » a-t-elle été modifiée ?
Dans la première partie de la commande, on a indiqué « GA_DataFrame_KW2$BounceRate« . Le signe dollar indique à R que la variable « BounceRate » doit être sélectionnée dans le Data Frame « GA_DataFrame_KW2 ».
Partie C - Calcul de la somme et de la moyenne
Afin de communiquer à la direction et au service marketing en ligne comment la performance a évolué entre la semaine 2 et la semaine 3, il faut maintenant calculer la somme ou la moyenne pour les métriques Google Analytics sélectionnées.
a) Calculer la somme avec la fonction sum
Pour calculer la somme respective des sessions, des transactions et des revenus, utilisez les commandes suivantes :
- GA_DataFrame_SUM_Sessions <- sum(GA_DataFrame_KW2$Sessions)
- GA_DataFrame_SUM_Transactions <- sum(GA_DataFrame_KW2$Transactions)
- GA_DataFrame_SUM_Revenue <- sum(GA_DataFrame_KW2$Revenue)
b) Calculer la moyenne avec la fonction mean
Pour calculer la valeur moyenne du BounceRate, utilisez la commande suivante :
- GA_DataFrame_MEAN_BounceRate <- mean(GA_DataFrame_KW2$BounceRate)
Remarque – conversion d’une variable :
Lors du calcul de la valeur moyenne du taux de rebond, un message d’erreur apparaîtra à cet endroit.

Cela est dû au fait que le formatage des décimales à l’aide de la fonction « format(x,…) » a transformé le type de données de la variable « BounceRate » de « numeric » en « character ». Ainsi, il n’est plus possible de calculer la valeur moyenne.
Il faut donc convertir à nouveau le « bounce rate ». Cela se fait via la commande suivante :
GA_DataFrame_KW2$BounceRate <- as.numeric(GA_DataFrame_KW2$BounceRate)
La fonction « as.numeric(x) » permet de reconvertir le taux de rebond du data frame en valeurs numériques.
Cela peut être vérifié avec la fonction « class(x) ».

Figure 8 : Analyse Web avec R – Vérification du type de variable
Il est maintenant possible d’effectuer la moyenne ou d’autres calculs.
Partie D - créer d'autres variables
La nouvelle variable est le taux de conversion (CVR) qui représente un indicateur de performance clé (KPI).
Grâce au taux de conversion, l’intervenant et l’analyste web peuvent, en règle générale, constater l’efficacité du trafic par rapport à un objectif de conversion. Si, par exemple, le nombre de ventes en ligne réussies est un objectif défini dans le cadre de l’ICP, le CVR permet de déterminer combien de sessions sont nécessaires en moyenne pour réaliser une vente en ligne.
La formule pour cela est

Pour inclure le taux de conversion en tant que nouvelle colonne dans les deux data frames, vous pouvez utiliser la requête suivante pour obtenir le CVR de Google Analytics et le sauvegarder dans une variable.
- GA_DataFrame_KW3_CVR <- google_analytics_4(nom_compte_ViewID, date_range = c(« 2018-01-21 », « 2018-01-27 »), metrics = c(« transactionPerSession« ), dimensions = c(« day »))
- CVR <- GA_DataFrame_KW3_CVR$transactionsPerSession
- GA_DataFrame_KW3$CVR <- CVR
Une autre possibilité serait de calculer la CVR directement dans les deux Data Frames déjà créées. Pour le data frame « GA_DataFrame_KW2« , le calcul du taux de conversion, y compris la création d’une nouvelle colonne, se présente comme suit :
GA_DataFrame_KW2$CVR <- GA_DataFrame_KW2$Transactions/GA_DataFrame_KW2$Sessions*100
Pour cela, vous créez une nouvelle colonne « CVR » dans le Data Frame « GA_DataFrame_KW2 » et celle-ci reçoit le contenu Transaction divisé par les sessions.
Si le data frame est sélectionné, les CVR seront affichés dans la sixième colonne.

Figure 9 : Sortie des valeurs
Partie E - Comparaison des semaines calendaires
Dans la dernière partie de cet article, nous allons encore comparer les deux semaines calendaires entre elles en ce qui concerne les métriques de Google Analytics. Vous pourrez ainsi voir si la performance de votre boutique en ligne a évolué positivement ou négativement.
Dans la première étape, vous calculez la différence pour les cinq métriques d’analyse web sélectionnées ainsi que pour une dimension « Tag » et vous les affectez à de nouvelles variables :
- delta_Sessions <- GA_DataFrame_KW3$Sessions-GA_DataFrame_KW2$Sessions
- delta_BounceRate <- GA_DataFrame_KW3$ BounceRate -GA_DataFrame_KW2$BounceRate
- delta_Transactions <- GA_DataFrame_KW3$ Transactions-GA_DataFrame_KW2$Transactions
- delta_Revenue <- GA_DataFrame_KW3$ Revenue -GA_DataFrame_KW2$Revenue
- delta_CVR <- GA_DataFrame_KW3$CVR-GA_DataFrame_KW2$CVR
- Tag <- c(14,15,16,17,18,19,20)
Dans la deuxième étape, vous créez un nouveau Data Frame « DataFrame_GA_Delta » et affectez les six nouvelles variables au Data Frame.
DataFrame_GA_Delta <- data.frame(Tag, delta_Sessions, delta_BounceRate, delta_Transactions, delta_Revenue)

En examinant le chiffre d’affaires et les transactions, vous pouvez dire aux parties prenantes qu’à l’exception du premier jour, le chiffre d’affaires a toujours été supérieur à celui de la semaine précédente.
Bien sûr, dans la réalité, cette analyse prend en compte d’autres facteurs. Cependant, ce billet devrait vous avoir présenté de nouvelles fonctionnalités pour l’utilisation de R.
AUTRES SERVICES D'IT-WINGS
NEWSLETTER IT-WINGS
Restez toujours à jour !
Plus d'articles de blog

Position-Zéro
POSITION ZERO : La première place ne suffit-elle plus ? Pour la plupart des gens, l’objectif par excellence du référencement reste le classement en première place des résultats de recherche.

Introduction à l’analyse web avec R
Introduction à l’analyse web avec R Introduction à l’analyse web avec R En fonction des préférences de l’analyste web ou selon le point de vue d’une entreprise ou d’une agence

Expérience de stage dans le domaine du marketing en ligne
Expérience de stage dans le domaine du marketing en ligne Expérience de stage dans le domaine du marketing en ligne Salut ! Je m’appelle Alisa et j’étudie la publicité et