Σκοπός της εργασίας είναι η εφαρμογή τεχνικών συσταδοποίησης για την κατηγοριοποίηση πελατών ενός εμπορικού κέντρου. Το dataset που χρησιμοποιήθηκε είναι το “Mall Customers Dataset - Mall_Customers” και περιλαμβάνει τις εξής μεταβλητές:

CustomerID Gender Age Annual Income (k$) Spending Score (1-100)

Η μεταβλητή Spending Score δείχνει πόσο ξοδεύει ένας πελάτης.

dataset <- read.csv("Mall Customers Dataset - Mall_Customers.csv")
head(dataset)
##   CustomerID  Genre Age Annual.Income..k.. Spending.Score..1.100.
## 1          1   Male  19                 15                     39
## 2          2   Male  21                 15                     81
## 3          3 Female  20                 16                      6
## 4          4 Female  23                 16                     77
## 5          5 Female  31                 17                     40
## 6          6 Female  22                 17                     76
data = dataset[3:5]
distances = dist(data, method = "euclidean")
clusterModel = hclust(distances, method = "ward.D2")
plot(clusterModel)

clusterGroups = cutree(clusterModel, k = 5)
tapply(dataset$Age, clusterGroups, mean)
##        1        2        3        4        5 
## 45.21739 24.85000 42.15663 32.69231 41.68571
tapply(dataset$Annual.Income..k.., clusterGroups, mean)
##        1        2        3        4        5 
## 26.30435 24.95000 54.75904 86.53846 88.22857
tapply(dataset$Spending.Score..1.100., clusterGroups, mean)
##        1        2        3        4        5 
## 20.91304 81.00000 49.77108 82.12821 17.28571
dataset[10,]
##    CustomerID  Genre Age Annual.Income..k.. Spending.Score..1.100.
## 10         10 Female  30                 19                     72
clusterGroups[10]
## [1] 2
cluster1 = subset(dataset, clusterGroups == 1) 
cluster1[1:10,]
##    CustomerID  Genre Age Annual.Income..k.. Spending.Score..1.100.
## 1           1   Male  19                 15                     39
## 3           3 Female  20                 16                      6
## 5           5 Female  31                 17                     40
## 7           7 Female  35                 18                      6
## 9           9   Male  64                 19                      3
## 11         11   Male  67                 19                     14
## 13         13 Female  58                 20                     15
## 15         15   Male  37                 20                     13
## 17         17 Female  35                 21                     35
## 19         19   Male  52                 23                     29

Από τη διαδικασία της ιεραρχικής συσταδοποίησης προέκυψαν 5 ομάδες πελατών με διαφορετικά χαρακτηριστικά. Οι μέσες τιμές των μεταβλητών που υπολογίστηκαν δείχνουν ότι κάθε cluster αντιπροσωπεύει διαφορετικό τύπο πελάτη.

Παρατηρείται ότι ορισμένες ομάδες έχουν υψηλό εισόδημα και υψηλό επίπεδο κατανάλωσης, ενώ άλλες χαρακτηρίζονται από χαμηλό εισόδημα και χαμηλό spending score. Υπάρχουν επίσης ενδιάμεσες κατηγορίες με πιο ισορροπημένα χαρακτηριστικά.

Η συσταδοποίηση επιτρέπει την κατηγοριοποίηση των πελατών σε διακριτές ομάδες με βάση τη συμπεριφορά και τα οικονομικά τους χαρακτηριστικά. Αυτό μπορεί να αξιοποιηθεί για καλύτερη εξυπηρέτηση πελατών και βελτιστοποίηση των πωλήσεων.