Databáza Food_clean pochádza od potravinárskej spoločnosti, ktorá plánuje ďalšiu marketingovú kampaň s cieľom maximalizovať zisk. Pilotnú kampaň absolvovalo 1956 zákazníkov, pričom tí, ktorí si zakúpili ponuku promočnej kampane, sú označení v stĺpcoch AcceptedCmp1 až AcceptedCmp5. Tieto údaje umožňujú analyzovať mieru akceptácie kampaní podľa segmentu zákazníkov a optimalizovať budúce marketingové stratégie.
V tejto časti sme sa zamerali na identifikáciu chýbajúcich hodnôt v dátovom súbore. Pomocou analytických nástrojov sme zistili počet nulových hodnôt v jednotlivých premenných. Najviac chýbajúcich hodnôt sa nachádzalo v premenných Age, Income, MntWines a NumStorePurchases.
Po identifikovaní chýbajúcich hodnôt sme pristúpili k čisteniu dát, kde sme odstránili neúplné záznamy alebo ich nahradili vhodnými hodnotami. Po vyčistení dát sa počet pozorovaní znížil z 1956 na 1795.
## [1] 26
## Age Education Marital_Status Income
## 27 9 12 26
## Kidhome Teenhome Recency MntWines
## 5 1 15 20
## MntFruits MntMeatProducts MntFishProducts MntSweetProducts
## 13 18 15 18
## MntGoldProds NumDealsPurchases NumWebPurchases NumCatalogPurchases
## 21 15 14 17
## NumStorePurchases NumWebVisitsMonth AcceptedCmp3 AcceptedCmp4
## 23 3 0 0
## AcceptedCmp5 AcceptedCmp1 AcceptedCmp2 Complain
## 0 0 0 0
## Response
## 0
## [1] 1956
## [1] 1795
V tejto časti sme vytvorili nové analytické premenné, ktoré umožňujú lepšiu segmentáciu zákazníkov. Dáta sme rozdelili podľa vekových skupín, príjmových skupín, počtu nákupov a identifikácie zákazníkov s deťmi.
Toto rozdelenie nám umožnilo lepšie analyzovať správanie jednotlivých skupín zákazníkov a identifikovať rozdiely medzi nimi.
V tejto časti sme analyzovali základné charakteristiky dát pomocou popisnej štatistiky. Výsledky sme prezentovali podľa vzdelania, rodinného stavu, vekových skupín a príjmových skupín.
##
## ===== POPISNÁ ŠTATISTIKA PODĽA VZDELANIA =====
## # A tibble: 4 × 8
## Education Počet Priem_vek Priem_príjem Priem_výdavky Priem_víno Priem_mäso
## <chr> <int> <dbl> <dbl> <dbl> <dbl> <dbl>
## 1 Basic 52 46 20071 82 7 12
## 2 Graduation 1012 54 51655 605 277 177
## 3 Master 324 56.4 52356 578 318 151
## 4 PhD 407 56.3 55240 665 399 169
## # ℹ 1 more variable: Priem_nákupy <dbl>
Pri analýze podľa vzdelania môžeme pozorovať, že zákazníci s vyšším vzdelaním dosahujú vyššie príjmy a zároveň aj vyššie výdavky. Najvyššie priemerné výdavky vykazujú zákazníci s titulom PhD, ktorí zároveň najviac míňajú na víno a mäso. Naopak, zákazníci so základným vzdelaním majú výrazne nižší príjem aj výdavky. Tento výsledok naznačuje, že vzdelanie môže byť významným faktorom ovplyvňujúcim nákupné správanie zákazníkov.
##
## ===== POPISNÁ ŠTATISTIKA PODĽA RODINNÉHO STAVU =====
## # A tibble: 6 × 8
## Marital_Status Počet Priem_vek Priem_príjem Priem_výdavky Priem_víno
## <chr> <int> <dbl> <dbl> <dbl> <dbl>
## 1 Alone 3 51 43789 257 185
## 2 Divorced 188 57.3 53420 596 320
## 3 Married 702 54.1 51691 593 306
## 4 Single 385 52 49445 593 277
## 5 Together 459 55.9 52315 605 314
## 6 Widow 58 64 56106 691 360
## # ℹ 2 more variables: Priem_mäso <dbl>, Priem_nákupy <dbl>
Pri rozdelení podľa rodinného stavu vidíme, že najvyššie výdavky majú ovdovení zákazníci, ktorí zároveň dosahujú aj vyšší priemerný vek. Naopak, skupiny ako Single alebo Married vykazujú podobné hodnoty príjmov aj výdavkov. Rozdiely medzi rodinnými stavmi naznačujú, že životná situácia zákazníkov môže ovplyvňovať ich nákupné správanie a výšku výdavkov.
##
## ===== POPISNÁ ŠTATISTIKA PODĽA VEKOVEJ SKUPINY =====
## # A tibble: 4 × 8
## AgeGroup Počet Priem_príjem Priem_výdavky Priem_víno Priem_mäso Priem_nákupy
## <fct> <int> <dbl> <dbl> <dbl> <dbl> <dbl>
## 1 18-30 6 56736 739 331 300 11
## 2 31-45 365 46169 568 244 185 11.1
## 3 46-60 849 50929 553 284 150 12
## 4 60+ 575 56233 685 373 175 13.8
## # ℹ 1 more variable: Web_návštevy <dbl>
Pri analýze priemerných výdavkov podľa vekových skupín môžeme pozorovať, že najvyššie výdavky dosahuje skupina 60+, čo môže súvisieť s vyššou finančnou stabilitou. Skupiny 31–45 a 46–60 rokov vykazujú podobné, mierne nižšie výdavky. Najmladšia skupina 18–30 rokov má síce vyššie výdavky, avšak vzhľadom na nízky počet respondentov nie je tento výsledok dostatočne reprezentatívny.
##
## ===== POPISNÁ ŠTATISTIKA PODĽA PRÍJMOVEJ SKUPINY =====
## # A tibble: 4 × 7
## IncomeGroup Počet Priem_výdavky Priem_víno Priem_mäso Priem_nákupy
## <fct> <int> <dbl> <dbl> <dbl> <dbl>
## 1 "Nízky" 290 76 15 24 5.3
## 2 "Stredný" 848 290 167 58 9.7
## 3 "Vysoký" 614 1201 602 348 18.9
## 4 "Veľmi\n vysoký" 43 1621 706 638 18.8
## # ℹ 1 more variable: Akceptov_kampane <dbl>
Graf zobrazuje štruktúru výdavkov zákazníkov podľa príjmových skupín a jednotlivých kategórií produktov. Z výsledkov je zrejmé, že s rastúcim príjmom sa zvyšujú výdavky vo všetkých kategóriách. Najväčšiu časť výdavkov vo všetkých príjmových skupinách tvorí kategória víno, nasledovaná výdavkami na mäso.
Zákazníci s nízkym príjmom vykazujú minimálne výdavky vo všetkých kategóriách, zatiaľ čo zákazníci s vysokým a veľmi vysokým príjmom míňajú výrazne viac, najmä na víno a mäso. Ostatné kategórie, ako ovocie, ryby, sladkosti a zlaté produkty, tvoria menší podiel výdavkov, avšak aj pri nich je viditeľný rast spolu so zvyšujúcim sa príjmom.
Zo získaných výsledkov môžeme pozorovať, že zákazníci s vyšším vzdelaním a vyšším príjmom majú tendenciu viac míňať. Rovnako starší zákazníci vykazujú vyššie výdavky a vyššiu frekvenciu nákupov.
Výdavky na víno výrazne rastú so zvyšujúcim sa príjmom. Víno je najväčšou výdavkovou položkou vo všetkých príjmových skupinách, čo naznačuje vysoký potenciál pre prémiové produkty.
Mäso je druhou najvýznamnejšou kategóriou. Zákazníci s vyšším príjmom výrazne viac investujú do kvalitných mäsových výrobkov.
Segment s veľmi vysokým príjmom míňa najviac vo všetkých kategóriách. Predstavuje ideálne cieľové publikum pre prémiové kampane a personalizovaný marketing.
Zákazníci s nízkym príjmom sú citliví na cenu. Pre túto skupinu sú najúčinnejšie kampane zamerané na zľavy, akciové balíčky a zvýhodnené ponuky.
Menšie kategórie (sladkosti, ovocie, ryby) rastú s príjmom. Pri vyšších príjmových skupinách je priestor pre cross-selling drahších produktov.
Medzi stredným a vysokým príjmom je výrazný skok vo výdavkoch. Po prekročení určitej príjmovej hranice zákazníci začínajú míňať podstatne viac.
Prémiový zákazníci tvoria menšiu časť zákazníkov, ale generuje najväčšiu časť tržieb. Je dôležité zamerať sa na strategicky pripravené kampane a budovanie hodnotných vzťahov.
V tejto časti sme vybrali relevantné premenné pre ďalšiu analýzu. Výber bol založený na analytickom význame premenných a ich využiteľnosti pre faktorovú analýzu a regresné modely.
Faktorová analýza bola použitá na zníženie počtu premenných a identifikáciu skrytých faktorov ovplyvňujúcich správanie zákazníkov.
## Kaiser-Meyer-Olkin factor adequacy
## Call: KMO(r = vars_scaled)
## Overall MSA = 0.89
## MSA for each item =
## Age Income Recency MntWines
## 0.68 0.89 0.54 0.89
## MntFruits MntMeatProducts MntFishProducts MntSweetProducts
## 0.95 0.91 0.94 0.95
## MntGoldProds NumDealsPurchases NumWebPurchases NumCatalogPurchases
## 0.94 0.52 0.86 0.91
## NumStorePurchases NumWebVisitsMonth Kidhome Teenhome
## 0.91 0.83 0.91 0.59
Pomocou KMO testu sme overili vhodnosť dát pre faktorovú analýzu. Hodnota MSA = 0,89 naznačuje vysokú vhodnosť dát pre faktorovú analýzu. Z výsledkov vidíme, že žiadnu z premenných nemusíme vynechať, lebo všetky jednotlivé hodnoty presiahli 0,5.
## $chisq
## [1] 14277.2
##
## $p.value
## [1] 0
##
## $df
## [1] 120
Bartlettov test potvrdil, že medzi premennými existujú štatisticky významné korelácie (p < 0,001), čo znamená, že faktorová analýza
je vhodná.
Zo scree plotu je zrejmé, že prvý faktor vysvetľuje najväčšiu časť variability v dátach, keďže jeho vlastná hodnota (eigenvalue) je
približne 5,8, čo predstavuje veľmi výrazný podiel. Ide teda o extrémne dominantný faktor. Druhý faktor má hodnotu okolo 1,2, čo
znamená, že podľa Kaiserovho kritéria ešte spĺňa požiadavku na ponechanie vo výslednom modeli. Ostatné faktory však už majú
eigenvalues menšie ako 1 a ich prínos k celkovej vysvetlenej variabilite je minimálny. Preto nemajú dostatočnú silu na to, aby bolo
vhodné ich ďalej zahrnúť do analýzy.
##
## Loadings:
## ML1 ML4 ML3 ML2
## Age 0.478
## Income 0.610 0.607
## Recency
## MntWines 0.639 0.432
## MntFruits 0.668
## MntMeatProducts 0.560 0.646
## MntFishProducts 0.693
## MntSweetProducts 0.651
## MntGoldProds 0.590
## NumDealsPurchases 0.534
## NumWebPurchases 0.652 0.361
## NumCatalogPurchases 0.563 0.630
## NumStorePurchases 0.695
## NumWebVisitsMonth -0.348 -0.524 0.630
## Kidhome -0.531
## Teenhome 0.671
##
## ML1 ML4 ML3 ML2
## SS loadings 4.425 1.935 1.169 1.051
## Proportion Var 0.277 0.121 0.073 0.066
## Cumulative Var 0.277 0.397 0.471 0.536
4 faktory vysvetľujú 53.6% variancie:
| Faktor | Premenné | Názov |
|---|---|---|
| ML1 | Výdavky na jedlo, nakupy web/obchod, príjem, -deti | Nákupná aktivita |
| ML2 | Zľavové nákupy, web návštevy | Cenovo citlivý zákazník |
| ML3 | Teenhome, vek | Starší rodič tínedžerov |
| ML4 | Príjem, mäso, katalógové nákupy,-web návštevy | Prémiový katalógový zákazník |
Pomocou PCA analýzy sme identifikovali hlavné komponenty, ktoré vysvetľujú najväčšiu časť variability dát. Prvé komponenty vysvetľujú väčšinu variability, čo umožňuje znížiť počet premenných.
## PC1 PC2 PC3 PC4 PC5 PC6
## Standard deviation 2.508694 1.428525 1.11470 0.9990704 0.8989737 0.8762041
## Proportion of Variance 0.393350 0.127540 0.07766 0.0623800 0.0505100 0.0479800
## Cumulative Proportion 0.393350 0.520890 0.59855 0.6609300 0.7114400 0.7594300
## PC7 PC8
## Standard deviation 0.7827286 0.7555187
## Proportion of Variance 0.0382900 0.0356800
## Cumulative Proportion 0.7977200 0.8333900
Podľa pravidla eigenvalue >1 (červená čiara na scree plote): -
PC1: 2:51 - 39.3% variancie - PC2: 1.43 - 12.8% variancie - PC3: 1.11 -
7.8% variancie Tieto komponenty dokopy vysvetľujú 59.9% variancie.
## # A tibble: 3 × 6
## Cluster Počet Priem_vek Priem_príjem Priem_výdavky Priem_nákupy
## <fct> <int> <dbl> <dbl> <dbl> <dbl>
## 1 1 502 60.3 57115 699 16.6
## 2 2 466 53.9 75671 1385 19.5
## 3 3 827 51.8 34861 95 5.8
## k WSS
## 1 1 23322.000
## 2 2 18439.661
## 3 3 15728.952
## 4 4 14099.820
## 5 5 12775.509
## 6 6 11624.863
## 7 7 10906.708
## 8 8 9954.558
## 9 9 9518.935
## 10 10 9024.499
## k Silhouette
## 1 2 0.2351361
## 2 3 0.2254446
## 3 4 0.1813142
## 4 5 0.2494177
## 5 6 0.1822000
## 6 7 0.2214949
## 7 8 0.2135592
Lakeť je pri k=3. Najvyššia silhouette hodnota v tomto prípade je pri k=5 -> optimálny počet. Pre marketingové vysvetlenie je optimálnejšie použiť tri segmenty.
Napriek tomu, že metóda Silhouette naznačila optimálny počet segmentov na úrovni 5, pri finálnom rozhodovaní sme zohľadnili aj
praktickú interpretovateľnosť a využiteľnosť výsledkov. Pri rozdelení na 5 segmentov boli niektoré skupiny veľmi podobné a rozdiely
medzi nimi neboli dostatočne výrazné. To by v praxi sťažovalo interpretáciu výsledkov a následné využitie segmentácie napríklad pri
marketingových stratégiách.
Preto sme sa rozhodli pre rozdelenie na 3 segmenty, ktoré poskytujú jasnejšie a zmysluplnejšie odlíšené skupiny zákazníkov. Tento
počet segmentov zároveň zabezpečuje lepšiu prehľadnosť výsledkov a jednoduchšiu implementáciu v praxi. Tri segmenty zároveň
dostatočne vystihujú hlavné typy zákazníkov – zákazníkov s vysokými výdavkami, strednými výdavkami a nízkymi výdavkami.
Výber troch segmentov tak predstavuje kompromis medzi štatistickou presnosťou a praktickou interpretovateľnosťou výsledkov.
Na základe klastrovej analýzy sme identifikovali tri hlavné segmenty zákazníkov:
Segment 1 – Prémiový zákazníci (177 zákazníkov)
s vysokým príjmom a vysokými výdavkami
reagujú na kampane výborne
najlepší cieľ pre budúcu kampaň
Segment 2 – zákazníci so stredným príjmom a pravidelnými nákupmi ( 748 zákazníkov )
priemerný príjem, umiernené výdavky, majú deti
na kampane reagujú slabo
potenciál pri správnej kampani zameranej na rodiny
Segment 3 – zákazníci s nízkym príjmom a nízkymi výdavkami (870 zákazníkov)
najnižší príjem, minimálne výdavky, najviac detí
na kampane takmer nereagujú
nevhodný cieľ pre prémiové kampane
V čom sú naše zhluky podobné: Recency je takmer rovnaká (cca 49 dní).
V čom sú naopak rozdielne: Príjem, výdavky a reakcia na kampane sú dramaticky odlišné.
## # A tibble: 3 × 14
## Segment Počet Priem_vek Priem_príjem Priem_výdavky Priem_nákupy Recency Deti
## <fct> <int> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl>
## 1 1 177 53.7 79512 1559 19.4 49.1 0.27
## 2 2 748 58.3 64685 932 17.8 49.8 0.77
## 3 3 870 51.9 34835 117 6.3 48.3 1.33
## Cmp1 Cmp2 Cmp3 Cmp4 Cmp5 Response
## <dbl> <dbl> <dbl> <dbl> <dbl> <dbl>
## 1 0.58 0.14 0.12 0.37 0.69 0.52
## 2 0.01 0 0.05 0.08 0 0.12
## 3 0 0 0.08 0.01 0 0.11
)
Z boxplotu možno stručne vidieť, že prvý segment má najvyššie a najrozmanitejšie výdavky, druhý segment predstavuje stredné výdavky s
pomerne širokým rozptylom a tretí segment má jednoznačne najnižšie výdavky s minimálnou variabilitou. Celkovo tak graf ukazuje
výrazné rozdiely v nákupnom správaní medzi segmentmi.
Z grafu môžeme pozorovať, že práve segment 1 najviac reaguje na kampane.
V tejto časti sme definovali hypotézy, ktoré skúmajú vzťahy medzi premennými. Hypotézy boli testované pomocou regresnej analýzy.
H0: Príjem, vek, počet detí a vzdelanie nemajú štatisticky významný vplyv na celkové výdavky zákazníka (TotalSpending) H1: Príjem, vek, počet detí a vzdelanie majú štatisticky významný vplyv na celkové výdavky zákazníka (TotalSpending)
V tejto časti sme pripravili dáta pre regresnú analýzu. Vytvorili sme premennú TotalSpending a vybrali nezávislé premenné.
Výsledky regresného modelu ukazujú, že premenné Income, Kidhome a Teenhome majú štatisticky významný vplyv na celkové výdavky zákazníkov. Premenné Age a Education neboli štatisticky významné.
Model vysvetľuje približne 68 % variability dát, čo naznačuje dobrú kvalitu modelu.
##
## Call:
## lm(formula = TotalSpending ~ Age + Income + Kidhome + Teenhome +
## Education, data = Food_reg)
##
## Residuals:
## Min 1Q Median 3Q Max
## -2836.62 -198.03 -30.69 171.82 2116.43
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) -1.196e+02 6.387e+01 -1.873 0.0613 .
## Age -2.820e-01 8.406e-01 -0.335 0.7373
## Income 1.937e-02 4.550e-04 42.572 <2e-16 ***
## Kidhome -2.462e+02 1.764e+01 -13.960 <2e-16 ***
## Teenhome -1.816e+02 1.664e+01 -10.913 <2e-16 ***
## EducationGraduation -5.532e+01 5.063e+01 -1.093 0.2747
## EducationMaster -7.702e+01 5.333e+01 -1.444 0.1488
## EducationPhD -5.397e+01 5.293e+01 -1.020 0.3080
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 340.6 on 1787 degrees of freedom
## Multiple R-squared: 0.6846, Adjusted R-squared: 0.6834
## F-statistic: 554.2 on 7 and 1787 DF, p-value: < 2.2e-16
V tejto časti sme testovali predpoklady regresného modelu
Normalita reziduálov – test Shapiro-Wilk ukázal, že reziduá nie sú normálne rozdelené
Q-Q plot a histogram potvrdzujú - reziduály sa odchyľujú od normálneho rozdelenia - bežné pri veľkej vzorke
##
## Shapiro-Wilk normality test
##
## data: sample(residuals(model), 5000, replace = TRUE)
## W = 0.94053, p-value < 2.2e-16
Homoskedasticita – Breusch-Pagan test ukázal heteroskedasticitu.
Rozptyl nie je konštantný. Štandardne chyby môžu byť skreslené.
##
## studentized Breusch-Pagan test
##
## data: model
## BP = 238.17, df = 7, p-value < 2.2e-16
Multikolinearita – VIF hodnoty boli nižšie ako 5, čo znamená, že multikolinearita nie je problém
## Age Income Kidhome Teenhome
## 1.316 1.369 1.391 1.259
Regresná analýza ukázala, že na celkové výdavky zákazníkov majú štatisticky významný vplyv premenné Income, Kidhome a Teenhome,
zatiaľ čo Age a Education sa neukázali ako štatisticky významné prediktory. Model vysvetľuje približne 68 % variability, čo naznačuje
jeho relatívne dobrú predikčnú schopnosť. Testovanie predpokladov však ukázalo, že reziduá nie sú normálne rozdelené a v modeli sa
vyskytuje heteroskedasticita, aj keď multikolinearita nepredstavovala problém (VIF < 5). Na základe výsledkov regresie môžeme
konštatovať, že model je použiteľný, ale niektoré výsledky treba interpretovať opatrne. Keďže viaceré premenné majú štatisticky
významný vplyv na TotalSpending, nulovú hypotézu (H0) zamietame a alternatívnu hypotézu (H1) prijímame.