Analyse des ventes et des comportements client d’une librairie en ligne – Python | Jupyter Notebook

Contexte

Lors de ce projet d’étude, nous travaillons pour une librairie en ligne, pour laquelle nous devons procéder à une analyse en 2 parties :
Partie 1 : Analyse des données relatives au chiffre d’affaire depuis l’ouverture de la boutique il y a 2 ans
Partie 2 : Analyse des comportements clients pour la création de nouvelles offres

Le jeu de données se compose de 3 fichier :

  • 8,600 clients et leurs informations (âge, genre…)
  • 3,700 livres (prix, catégories)
  • 680,000 transactions (client, article, quantité, date…
Objectifs

Nettoyer et transformer les fichiers fournis en un jeu de données exploitable.

Manipuler les outils statistiques d’analyse bivariée des corrélations : coefficient de khi-2, ANOVA à 2 facteurs, coefficient de Pearson, test de Kolmogorov-Smirnov.

Analyse graphique des données : heatmaps, boxplot, affichage de la distribution normale sur un scatterplot.

Ce que j’ai appris lors de ce projet

Il s’agissait de mon premier projet d’étude sur le sujet des corrélations, ce projet m’a appris à regarder au delà des résultats affichés par les tests statistiques et à m’intéresser aux données et à leur signification métier.

Par exemple si le test statistiques indiquait une préférence significative au seuil de 5% des femmes pour une certaine catégorie d’ouvrages, en regardant de plus près on observait une différence de 100 ou 200 ouvrages par rapport au chiffre théorique… sur plus de 100,000 transactions !

L’analyse des corrélation est délicate car on peut vite tomber dans la surinterprétation après le résultat d’un test à cause d’un facteur de confusion que l’on n’avait pas anticipé.

Méthodologie

Voici quelques éléments clés de l’analyse.

Preprocessing

Au cours d’une exploration détaillée et l’outil indicator de pd.merge, plusieurs problèmes ont été identifiés, comme des données de test qui étaient restées dans les logs, des clients sans achats, les produits qui n’ont pas été mis en ligne mais qui sont dans la base de donnée.

En visualisant le chiffre d’affaire de l’entreprise on constate qu’il y a eu un problème dans la comptabilisation de certaines transactions en octobre 2022, nous avons donc exclu toutes les transactions de cette période de notre jeu de données final.

De plus nous avons identifié certains gros clients (sûrement professionnels) , dont nous avons gardé les transactions pour analyser le chiffre d’affaire mais que nous avons exclus comme outliers pouvant fausser l’analyse des comportements clients.

Analyse du chiffre d’affaires

Moyenne Mobile sur 30 jours pour détecter des tendances de fond.

Chiffre d’affaire selon les jours de la semaine pour identifier des pistes en termes marketing.

Histogramme et distribution normale

Courbe de Lorenz

Analyse des corrélations et comportements client

Le test de khi-2 retourne une p-value a 10e-05, donc résultats significatifs statistiquement, car on a un très large échantillon, pourtant les différences entre les valeurs observées et le cas théorique sont faibles, donc on peut difficilement conclure à une réelle préférence.

Anova à deux facteurs et boxplot selon les catégories de livre et l’âge. On observe que la plupart des acheteurs de la catégorie 2 sont jeunes, tandis que la catégorie 1 semble plaire à tous les publics.

Affichage des coefficients de corrélation sous forme de heatmap, on observe une nette préférence des moins de 30 ans pour la catégorie 2.

On calcule le coefficient de Pearson entre la Customer Lifetime Value et l’âge, mais aucune corrélation ne peut vraiment en être déduite.

Résultats