Úvod a cieľ analýzy

Cieľom reportu je pomôcť potravinárskej spoločnosti lepšie zacieliť ďalšiu marketingovú kampaň. Zameriame sa na to, čím sa odlišujú zákazníci, ktorí prijali poslednú ponuku, od zákazníkov, ktorí ju neprijali.

Analýza bude sledovať najmä príjem, vek, rodinnú situáciu, nákupné správanie, celkové výdavky a predchádzajúce reakcie na kampane. Na základe týchto informácií následne vytvoríme zákaznícke segmenty a odporučíme cieľovú skupinu pre budúcu kampaň.

Predspracovanie dát

Pred samotnou analýzou sme dáta pripravili tak, aby lepšie podporovali rozhodovanie o budúcej kampani. Okrem kontroly chýbajúcich a extrémnych hodnôt sme vytvorili súhrnné ukazovatele, ktoré zachytávajú celkové výdavky zákazníka, jeho nákupnú aktivitu, rodinnú situáciu a ochotu reagovať na predchádzajúce kampane.

Kontrola chýbajúcich hodnôt

Najprv sme overili, či dataset obsahuje chýbajúce hodnoty. Táto kontrola je potrebná ešte pred porovnávaním zákazníkov, aby bolo jasné, či sú dáta dostatočne úplné alebo ich treba pred ďalšou analýzou upraviť.

Rozsah chýbajúcich hodnôt podľa premenných
Premenná Počet chýbajúcich hodnôt Podiel v %
Age 27 1.38
Income 26 1.33
NumStorePurchases 23 1.18
MntGoldProds 21 1.07
MntWines 20 1.02
MntMeatProducts 18 0.92
MntSweetProducts 18 0.92
NumCatalogPurchases 17 0.87
Recency 15 0.77
MntFishProducts 15 0.77
NumDealsPurchases 15 0.77
NumWebPurchases 14 0.72
MntFruits 13 0.66
Marital_Status 12 0.61
Education 9 0.46
Kidhome 5 0.26
NumWebVisitsMonth 3 0.15
Teenhome 1 0.05

Chýbajúce údaje sa objavili vo viacerých premenných, ale pri každej z nich ide len o malú časť zákazníkov. Najviac chýbajúcich hodnôt je pri premennej Age, kde chýba údaj pri 27 zákazníkoch. V tejto fáze preto nejde o rozsiahly problém, ale pred ďalšou analýzou je potrebné rozhodnúť, ako s týmito hodnotami naložíme.

Ďalej sme sa pozreli na to, koľko zákazníkov by zostalo v datasete, ak by sme odstránili všetky riadky s aspoň jednou chýbajúcou hodnotou.

Dopad chýbajúcich hodnôt na veľkosť datasetu
Metrika Hodnota
Počet zákazníkov v pôvodných dátach 1956
Celkový počet chýbajúcich hodnôt 272
Počet zákazníkov po odstránení neúplných riadkov 1795
Podiel zachovaných zákazníkov pri odstránení riadkov 91.8 %

Po odstránení neúplných riadkov by v dátach zostalo 1 795 zákazníkov z pôvodných 1 956. Znamená to, že by sme prišli o 161 zákazníkov. Keďže cieľom reportu je pripraviť zákazníkov na porovnávanie a segmentáciu, nechceme zbytočne zmenšovať zákaznícku základňu. Vhodnejšie je preto chýbajúce hodnoty doplniť a pracovať so všetkými zákazníkmi.

Okrem počtu chýbajúcich hodnôt sme skontrolovali aj ich rozloženie. Graf ukazuje, či chýbajúce údaje vznikajú skôr jednotlivo, alebo sa pri niektorých zákazníkoch objavuje viac chýbajúcich údajov naraz.

Graf ukazuje, že chýbajúce hodnoty sa netýkajú iba jednej premennej. Pri niektorých zákazníkoch chýba viac údajov naraz, preto by jednoduché odstránenie neúplných riadkov znamenalo stratu časti zákazníkov. Keďže rozsah chýbajúcich hodnôt nie je veľký, budeme ich riešiť doplnením.

Na doplnenie vizuálnej kontroly sme overili, či chýbajúce hodnoty pôsobia náhodne. Táto kontrola pomáha rozhodnúť, či môžeme chýbajúce hodnoty doplniť jednoduchým spôsobom, alebo či treba byť pri interpretácii opatrnejší.

Kontrola náhodnosti chýbajúcich hodnôt
statistic df p.value missing.patterns
941.9781 764 1.03e-05 38

Kontrola ukázala, že chýbajúce údaje sa v dátach neobjavujú úplne náhodne. To znamená, že pri ich dopĺňaní musíme byť opatrní. Keďže ich rozsah je malý, premenné ponecháme v reporte a chýbajúce hodnoty doplníme tak, aby sme zachovali čo najviac informácií o zákazníkoch.

Pri číselných premenných sme použili medián, aby doplnené hodnoty neboli príliš ovplyvnené extrémnymi hodnotami. Pri textových premenných sme použili najčastejšiu kategóriu.

Výsledok doplnenia chýbajúcich hodnôt
Stav dát Počet chýbajúcich hodnôt Počet zákazníkov
Pred doplnením 272 1956
Po doplnení 0 1956

Po doplnení už v dátach nezostali žiadne chýbajúce hodnoty. V ďalších častiach reportu preto pracujeme s kompletným datasetom, ktorý obsahuje všetkých zákazníkov z pôvodnej vzorky.

Odľahlé hodnoty

Následne sme skontrolovali výrazne odľahlé hodnoty, ktoré by mohli skresliť ďalšie výsledky analýzy. Do tejto kontroly sme zahrnuli len numerické premenné, kategorické a binárne premenné sme vynechali, pretože pri nich hodnotenie odľahlých hodnôt nedáva praktický zmysel.

Vyššie hodnoty sa objavujú najmä pri premenných, ktoré opisujú výdavky a nákupnú aktivitu zákazníkov. Tieto hodnoty ponechávame v dátach, pretože môžu predstavovať reálne správanie aktívnych a hodnotných zákazníkov.

Ako problémová sa ukázala premenná Income. Hodnota 666 666 výrazne prevyšuje aj 99. percentil, preto ju nepovažujeme za reprezentatívny príjem domácnosti v tejto vzorke. Keďže ide iba o jeden extrémny záznam, odstránime ho z ďalšej analýzy.

Kontrola príjmu po odstránení extrémnej hodnoty
Ukazovateľ Hodnota
Počet zákazníkov po odstránení extrémneho príjmu 1955
Medián príjmu 51369
Priemerný príjem 51876
Najvyšší príjem po úprave 162397

Po odstránení jedného extrémneho záznamu už príjem lepšie zodpovedá zvyšku zákazníckej vzorky. V ďalšej analýze pracujeme s dátami bez hodnoty, ktorá by mohla neprimerane skresľovať výsledky.

Súhrnné premenné

Aby sme ďalej nepracovali s príliš detailným zoznamom pôvodných premenných, vytvorili sme niekoľko súhrnných ukazovateľov. Zamerali sme sa na oblasti, ktoré sú dôležité pri hodnotení zákazníkov pre marketingovú kampaň: výdavky, nákupnú aktivitu, rodinnú situáciu a predchádzajúce reakcie na ponuky.

Súhrnné ukazovatele vytvorené pre ďalšiu analýzu
Ukazovateľ Význam Využitie v reporte
TotalSpending celkové výdavky zákazníka na sledované produkty hodnota zákazníka pre firmu
TotalPurchases celkový počet nákupov cez zľavy, web, katalóg a obchod nákupná aktivita zákazníka
TotalChildren celkový počet detí a tínedžerov v domácnosti rodinná situácia zákazníka
AcceptedPreviousCmp počet prijatých predchádzajúcich kampaní predchádzajúca ochota reagovať na ponuky

V ďalších častiach reportu budeme tieto ukazovatele používať pri porovnávaní zákazníkov. Vďaka nim bude jednoduchšie sledovať, či sa zákazníci líšia najmä v celkových výdavkoch, nákupnej aktivite, rodinnej situácii alebo v predchádzajúcej reakcii na kampane.

Faktorová analýza

V tejto časti sa pozrieme na to, či sa výdavky zákazníkov a ich nákupná aktivita dajú zhrnúť do niekoľkých jednoduchších oblastí správania.

Do faktorovej analýzy vyberáme premenné, ktoré opisujú, na čo zákazníci míňajú a akým spôsobom nakupujú. Konkrétne ide o výdavky na víno, ovocie, mäso, ryby, sladkosti a špeciálne produkty, ďalej o počet nákupov so zľavou, cez web, katalóg, kamennú predajňu a počet návštev webu za posledný mesiac.

Vek, príjem, rodinnú situáciu, posledný nákup a prijatie kampaní do tejto analýzy nezaradíme, pretože nejde priamo o výdavky ani spôsob nákupu. Ich zahrnutie by sťažilo jasné pomenovanie výsledných faktorov.

Vhodnosť dát pre faktorovú analýzu

Pred výpočtom faktorov sme overili, či máme dostatočný počet pozorovaní vzhľadom na počet vybraných premenných. V analýze pracujeme s 1 947 zákazníkmi a 11 premennými, takže veľkosť datasetu je pre tento krok dostatočná.

Následne sa pozrieme na vzťahy medzi premennými. Ak spolu výdavky a spôsob nákupu aspoň čiastočne súvisia, faktorová analýza môže pomôcť zhrnúť ich do menšieho počtu prehľadnejších oblastí správania.

Súhrn korelácií medzi premennými
Ukazovateľ Hodnota
Počet testovaných dvojíc premenných 55
Počet štatisticky významných korelácií 53
Podiel významných korelácií 96.4 %

Súhrn korelácií ukazuje, že medzi viacerými vybranými premennými existujú štatisticky významné vzťahy. To znamená, že premenné nie sú úplne nezávislé a má zmysel overiť, či sa dajú zhrnúť do spoločných faktorov.

Kontrola vhodnosti dát pre faktorovú analýzu
Kontrola Výsledok
Celkové KMO 0.87
Bartlettov test - p-hodnota <0.001

Výsledky kontroly ukazujú, že vybrané premenné môžeme použiť vo faktorovej analýze. Celkové KMO má hodnotu 0,87, čo je dobrý výsledok, a Bartlettov test potvrdil, že medzi premennými sú dostatočné vzťahy. Skontrolovali sme aj jednotlivé KMO hodnoty premenných; žiadna z nich nebola natoľko problematická, aby sme ju museli z analýzy vyradiť.

Výber počtu faktorov

Ďalej sme určovali, koľko faktorov dáva pri vybraných premenných najväčší zmysel. Cieľom nie je vytvoriť čo najviac faktorov, ale nájsť menší počet skupín, ktoré sa dajú zrozumiteľne pomenovať.

Vlastné čísla faktorov
F1 F2 F3 F4 F5 F6 F7 F8 F9 F10 F11
5.103 1.561 0.821 0.694 0.616 0.529 0.444 0.39 0.356 0.256 0.23

Z vlastných čísel vyplýva, že hodnotu vyššiu ako 1 majú prvé dva faktory. Tie zachytávajú najväčšiu časť informácie z pôvodných premenných a majú zmysel pre ďalšiu interpretáciu. Ostatné faktory už majú vlastné čísla nižšie ako 1, preto ich nebudeme samostatne interpretovať.

Na základe vlastných čísel sme si overili, koľko faktorov má zmysel ďalej používať. Lakťový graf ukazuje, pri ktorých faktoroch ešte zostáva dostatok informácie a kde už prínos ďalších faktorov výrazne klesá.

Najsilnejší prínos majú prvé dva faktory. Ďalšie faktory už neprinášajú dostatočne výraznú informáciu, preto budeme pokračovať s dvojfaktorovým riešením.

Pre dvojfaktorové riešenie sme následne vypočítali faktorové zaťaženia. Tie ukazujú, ktoré premenné sa najviac viažu na jednotlivé faktory.

Významné faktorové zaťaženia
Premenná Faktor 1 Faktor 2
MntWines 0.71
MntFruits 0.691
MntMeatProducts 0.791
MntFishProducts 0.721
MntSweetProducts 0.691
MntGoldProds 0.543
NumDealsPurchases 0.52
NumWebPurchases 0.532 0.596
NumCatalogPurchases 0.783
NumStorePurchases 0.705
NumWebVisitsMonth -0.596 0.419

Výsledky ukazujú, že prvý faktor sa najviac spája s výdavkami na produkty. Silné väzby má najmä na výdavky na mäso, ryby, ovocie, sladkosti a tiež na nákupy cez katalóg. Zároveň má zápornú väzbu s návštevami webu, čo naznačuje, že zákazníci s vyššími výdavkami nemusia patriť medzi tých, ktorí najčastejšie navštevujú web.

Druhý faktor sa najviac spája so spôsobom nákupu. Najsilnejšiu väzbu má na počet nákupov cez web, nákupy so zľavou a čiastočne aj na nákupy v predajni. Tento faktor preto zachytáva skôr nákupnú aktivitu a využívanie nákupných kanálov.

Na záver sme zobrazili zákazníkov podľa dvoch vytvorených faktorov.

Diagram zobrazuje finálne dvojfaktorové riešenie faktorovej analýzy. Väčšina premenných sa viaže na prvý faktor, najmä výdavky na mäso, ryby, víno, ovocie, sladkosti a špeciálne produkty. K tomuto faktoru sa zároveň viažu aj nákupy cez katalóg a v kamennej predajni. Tento faktor preto pomenujeme ako výdavkové správanie zákazníka, pretože zachytáva zákazníkov, ktorí celkovo viac míňajú na produkty a sú aktívnejší v tradičných nákupných kanáloch.

Druhý faktor je užší a najviac sa spája s nákupmi cez web a nákupmi so zľavou. Tento faktor preto pomenujeme ako online a zľavová nákupná aktivita. Zachytáva skôr spôsob nákupu než celkovú výšku výdavkov.

Z výsledku vyplýva, že nákupné správanie zákazníkov sa dá zhrnúť najmä do dvoch oblastí: koľko zákazník míňa na produkty a akým spôsobom nakupuje. Tieto faktory môžu v ďalších častiach pomôcť pri lepšom pochopení rozdielov medzi skupinami zákazníkov.

PCA

V tejto časti použijeme analýzu hlavných komponentov na tie isté oblasti zákazníckeho správania ako pri faktorovej analýze. Cieľom je zistiť, či vieme väčší počet premenných o výdavkoch a nákupoch zobraziť v menšom počte komponentov.

Do PCA zahrnieme premenné opisujúce výdavky na víno, ovocie, mäso, ryby, sladkosti a špeciálne produkty, ďalej počet nákupov so zľavou, cez web, katalóg, kamennú predajňu a počet návštev webu za posledný mesiac. Vek, príjem, rodinnú situáciu, posledný nákup a prijatie kampaní do tejto časti nezaraďujeme, aby výsledok opisoval najmä nákupné správanie zákazníkov.

Dôležitosť hlavných komponentov

Najprv sa pozrieme na to, koľko informácie zachytávajú jednotlivé komponenty. Táto časť nám pomôže rozhodnúť, koľko komponentov má zmysel ďalej interpretovať.

Dôležitosť hlavných komponentov
PC 1 PC 2 PC 3 PC 4 PC 5 PC 6 PC 7 PC 8 PC 9 PC 10 PC 11
Smerodajná odchýlka 2.259 1.250 0.906 0.833 0.785 0.728 0.667 0.625 0.596 0.506 0.479
Podiel vysvetlenej variability 0.464 0.142 0.075 0.063 0.056 0.048 0.040 0.035 0.032 0.023 0.021
Kumulatívny podiel variability 0.464 0.606 0.681 0.744 0.800 0.848 0.888 0.924 0.956 0.979 1.000

Prvý komponent vysvetľuje najväčšiu časť rozdielov medzi zákazníkmi, konkrétne 46,4 %. Po pridaní druhého komponentu vysvetľujeme spolu 60,6 % variability a po treťom 68,1 %. Ďalšie komponenty už pridávajú menší prírastok, preto sa pri interpretácii zameriame najmä na prvé dva až tri komponenty.

Na vizuálne overenie počtu komponentov použijeme lakťový graf. Sledujeme, pri ktorých komponentoch ešte prírastok vysvetlenej variability dáva praktický zmysel.

Prvé dva komponenty vysvetľujú 60,6 % variability, pričom tretí komponent zvyšuje vysvetlenú variabilitu na 68,1 %. Keďže tretí komponent ešte prináša dodatočnú informáciu o rozdieloch medzi zákazníkmi, ponecháme v ďalšej interpretácii tri komponenty. Hlavný dôraz však bude na prvých dvoch komponentoch, ktoré zachytávajú najväčšiu časť nákupného správania.

Zákazníkov zobrazíme podľa prvých dvoch hlavných komponentov a zároveň ich rozdelíme podľa reakcie na poslednú kampaň. Chceme zistiť, či sa prijatie kampane spája s odlišným nákupným správaním.

Graf ukazuje, že zákazníci, ktorí prijali poslednú kampaň, sa výrazne prekrývajú so zákazníkmi, ktorí ju neprijali. To znamená, že samotné hlavné oblasti nákupného správania nestačia na jasné oddelenie úspešných a neúspešných reakcií na kampaň.

Pre ďalšie odporúčanie preto nebudeme vychádzať iba z PCA. Výdavky a nákupná aktivita nám pomáhajú pochopiť správanie zákazníkov, ale cieľovú skupinu bude potrebné určiť aj pomocou ďalších charakteristík a následnej segmentácie.

Zhluková analýza

Cieľom zhlukovej analýzy je rozdeliť zákazníkov do skupín, ktoré sa od seba líšia z pohľadu marketingového potenciálu. Pri výbere premenných sme sa zamerali na charakteristiky, ktoré sú pre zacielenie kampane prakticky použiteľné: Age, Income, Recency, TotalSpending, TotalPurchases, TotalChildren a AcceptedPreviousCmp.

Do klastrovania nezaraďujeme kategóriové premenné ani samostatné binárne premenné AcceptedCmp1AcceptedCmp5. Reakciu na predchádzajúce kampane zachytávame súhrnne pomocou premennej AcceptedPreviousCmp, ktorá vyjadruje počet kampaní prijatých v minulosti.

Pri určovaní optimálneho počtu zhlukov boli použité tri metódy: lakťová metóda , silhouette a gap statistic.