Για την παρούσα μελέτη συσταδοποίησης επιλέχθηκε το σύνολο δεδομένων Mall Customers, το οποίο χρησιμοποιείται ευρέως για την ανάλυση συμπεριφοράς πελατών.
Το dataset περιλαμβάνει πληροφορίες για πελάτες ενός εμπορικού κέντρου και αποτελείται από 200 παρατηρήσεις (customers) και 5 βασικές μεταβλητές. Οι μεταβλητές αυτές είναι οι εξής:
Η μεταβλητή CustomerID αφαιρείται επειδή αποτελεί απλό αναγνωριστικό και δεν περιέχει πληροφορία χρήσιμη για την ομαδοποίηση. Επίσης, η μεταβλητή Gender δεν χρησιμοποιείται στην παρούσα ανάλυση, καθώς είναι κατηγορική.
Mall_Customers <- read.csv("C:/Users/30693/Downloads/Mall_Customers.csv", header=FALSE, sep=";")
head(Mall_Customers)
## V1 V2 V3 V4 V5
## 1 CustomerID Genre Age Annual Income (k$) Spending Score (1-100)
## 2 1 Male 19 15 39
## 3 2 Male 21 15 81
## 4 3 Female 20 16 6
## 5 4 Female 23 16 77
## 6 5 Female 31 17 40
mall <- Mall_Customers
colnames(mall) <- c("CustomerID", "Gender", "Age", "Income", "SpendingScore")
mall = mall[-1, ]
mall$CustomerID = NULL
mall = unique(mall)
distances = dist(mall[, c("Age", "Income", "SpendingScore")],
method = "euclidean")
clusterMall = hclust(distances, method = "ward.D2")
plot(clusterMall)
clusterGroups = cutree(clusterMall, k = 5)
mall$Age = as.numeric(mall$Age)
mall$Income = as.numeric(mall$Income)
mall$SpendingScore = as.numeric(mall$SpendingScore)
tapply(mall$Age, clusterGroups, mean)
## 1 2 3 4 5
## 45.21739 24.85000 42.15663 32.69231 41.68571
tapply(mall$Income, clusterGroups, mean)
## 1 2 3 4 5
## 26.30435 24.95000 54.75904 86.53846 88.22857
tapply(mall$SpendingScore, clusterGroups, mean)
## 1 2 3 4 5
## 20.91304 81.00000 49.77108 82.12821 17.28571
Από τα αποτελέσματα της εντολής tapply παρατηρείται ότι το δεύτερο και το τέταρτο cluster έχουν υψηλές τιμές στο Spending Score (περίπου 81–82), γεγονός που δείχνει ότι οι πελάτες αυτοί έχουν υψηλή καταναλωτική συμπεριφορά. Το τέταρτο cluster ξεχωρίζει επίσης επειδή συνδυάζει υψηλό εισόδημα (περίπου 86) με υψηλή κατανάλωση, αποτελώντας την πιο σημαντική κατηγορία πελατών.
Αντίθετα, το πρώτο και το πέμπτο cluster εμφανίζουν χαμηλό Spending Score (περίπου 20 και 17 αντίστοιχα), παρόλο που το πέμπτο έχει πολύ υψηλό εισόδημα (περίπου 88), γεγονός που δείχνει ότι αυτοί οι πελάτες έχουν δυνατότητα αλλά δεν καταναλώνουν. Το τρίτο cluster παρουσιάζει ενδιάμεσες τιμές σε όλες τις μεταβλητές και αντιπροσωπεύει μια μέση κατηγορία πελατών.
Συνολικά, τα αποτελέσματα δείχνουν ότι το clustering διαχώρισε τους πελάτες σε ομάδες με διαφορετική αγοραστική συμπεριφορά, κάτι που μπορεί να αξιοποιηθεί για καλύτερη κατανόηση και στόχευση των πελατών.