Το σύνολο δεδομένων προέρχεται από μία διεθνής εταιρεία ηλεκτρονικού εμπορίου που επιδιώκει να ανακαλύψει βασικές πληροφορίες από τη βάση δεδομένων των πελατών της.
Σκοπεύει να χρησιμοποιήσει προηγμένες τεχνικές μηχανικής μάθησης για την ανάλυση των πελατών της. Συγκεκριμένα, η εταιρεία ειδικεύεται στην πώληση ηλεκτρονικών προϊόντων. Το dataset περιέχει 10.999 εγγραφές και 12 στήλες, οι οποίες σχετίζονται με την αποστολή προϊόντων, την ικανοποίηση των πελατών και επιχειρηματικές μετρήσεις.
ID: Αριθμός αναγνώρισης πελατών.
Warehouse block: Η εταιρεία διαθέτει μια μεγάλη αποθήκη που είναι χωρισμένη σε τμήματα, όπως A, B, C, D, E.
Mode of shipment: Η εταιρεία αποστέλλει τα προϊόντα με διάφορους τρόπους, όπως πλοίο, αεροπορική μεταφορά και οδική μεταφορά.
Customer care calls: Ο αριθμός των κλήσεων που έγιναν για ερωτήσεις σχετικά με την αποστολή.
Customer rating: Η εταιρεία λαμβάνει βαθμολογίες από κάθε πελάτη. Το 1 είναι η χαμηλότερη (χειρότερη) βαθμολογία, ενώ το 5 είναι η υψηλότερη (καλύτερη).
Cost of the product: Το κόστος του προϊόντος σε δολάρια ΗΠΑ.
Prior purchases: Ο αριθμός των προηγούμενων αγορών του πελάτη.
Product importance: Η εταιρεία έχει κατηγοριοποιήσει τα προϊόντα σε διάφορες κατηγορίες, όπως χαμηλή, μεσαία και υψηλή σημασία.
Gender: Φύλο (Άνδρας ή Γυναίκα).
Discount offered: Η έκπτωση που προσφέρεται για το συγκεκριμένο προϊόν.
Weight in gms: Το βάρος του προϊόντος σε γραμμάρια.
Reached on time: Αυτή είναι η μεταβλητή-στόχος, όπου το 1 υποδηλώνει ότι το προϊόν ΔΕΝ παραδόθηκε στην ώρα του, ενώ το 0 υποδηλώνει ότι παραδόθηκε στην ώρα του.
Για καλύτερη κατανόηση παρακάτω φαίνονται οι στήλες αναλυτικά για τις πρώτες 10 εγγραφές:
| ID | Warehouse_block | Mode_of_Shipment | Customer_care_calls | Customer_rating | Cost_of_the_Product | Prior_purchases | Product_importance | Gender | Discount_offered | Weight_in_gms | Reached.on.Time_Y.N |
|---|---|---|---|---|---|---|---|---|---|---|---|
| 1 | D | Flight | 4 | 2 | 177 | 3 | low | F | 44 | 1233 | 1 |
| 2 | F | Flight | 4 | 5 | 216 | 2 | low | M | 59 | 3088 | 1 |
| 3 | A | Flight | 2 | 2 | 183 | 4 | low | M | 48 | 3374 | 1 |
| 4 | B | Flight | 3 | 3 | 176 | 4 | medium | M | 10 | 1177 | 1 |
| 5 | C | Flight | 2 | 2 | 184 | 3 | medium | F | 46 | 2484 | 1 |
| 6 | F | Flight | 3 | 1 | 162 | 3 | medium | F | 12 | 1417 | 1 |
| 7 | D | Flight | 3 | 4 | 250 | 3 | low | F | 3 | 2371 | 1 |
| 8 | F | Flight | 4 | 1 | 233 | 2 | low | F | 48 | 2804 | 1 |
| 9 | A | Flight | 3 | 4 | 150 | 3 | low | F | 11 | 1861 | 1 |
| 10 | B | Flight | 3 | 2 | 164 | 3 | medium | F | 29 | 1187 | 1 |
Το dataset μπορεί να απαντήσει σε διάφορες επιχειρηματικές ερωτήσεις, όπως:
Πώς επηρεάζει η έγκαιρη παράδοση την ικανοποίηση των πελατών;
Ποιος τρόπος αποστολής είναι πιο αξιόπιστος για την έγκαιρη παράδοση;
Υπάρχει σχέση μεταξύ εκπτώσεων και καθυστερήσεων στην παράδοση;
Υπάρχει κάποιο τμήμα που φαίνεται να έχει καθυστερήσεις στην παράδοση και να υπολειτουργεί?;
Ποιοι παράγοντες επηρεάζουν το αν ένας πελάτης θα κάνει επαναλαμβανόμενες αγορές;
Βασικά στατιστικά στοιχεία όπως ελάχιστη τιμή, μέγιστη τιμή, μέσος όρος και μέση τιμή κάθε στήλης και κατ’ επέκταση κάθε μεταβλητής παρουσιάζονται στο παρακάτω σχήμα.
## ID Warehouse_block Mode_of_Shipment Customer_care_calls
## Min. : 1 Length:10999 Length:10999 Min. :2.000
## 1st Qu.: 2750 Class :character Class :character 1st Qu.:3.000
## Median : 5500 Mode :character Mode :character Median :4.000
## Mean : 5500 Mean :4.054
## 3rd Qu.: 8250 3rd Qu.:5.000
## Max. :10999 Max. :7.000
## Customer_rating Cost_of_the_Product Prior_purchases Product_importance
## Min. :1.000 Min. : 96.0 Min. : 2.000 Length:10999
## 1st Qu.:2.000 1st Qu.:169.0 1st Qu.: 3.000 Class :character
## Median :3.000 Median :214.0 Median : 3.000 Mode :character
## Mean :2.991 Mean :210.2 Mean : 3.568
## 3rd Qu.:4.000 3rd Qu.:251.0 3rd Qu.: 4.000
## Max. :5.000 Max. :310.0 Max. :10.000
## Gender Discount_offered Weight_in_gms Reached.on.Time_Y.N
## Length:10999 Min. : 1.00 Min. :1001 Min. :0.0000
## Class :character 1st Qu.: 4.00 1st Qu.:1840 1st Qu.:0.0000
## Mode :character Median : 7.00 Median :4149 Median :1.0000
## Mean :13.37 Mean :3634 Mean :0.5967
## 3rd Qu.:10.00 3rd Qu.:5050 3rd Qu.:1.0000
## Max. :65.00 Max. :7846 Max. :1.0000
Επιπλέον, με τη χρήση του εργαλείου OpenRefine, μπορούμε να δημιουργήσουμε αρχικά διαγράμματα για την καλύτερη κατανόηση των διαθέσιμων δεδομένων. Ενδεικτικά, παρουσιάζεται και το ιστορικό του έργου όπου φαίνεται και η διαγραφή 0 στηλών κατα την εκτέλεση διαγραφής διπλότυπων εγγραφών.
ggplot(ShipmentData, aes(x = Weight_in_gms, y = Cost_of_the_Product, color = Weight_in_gms)) +
geom_point(alpha = 0.7) Από το συγκεκριμένο Scatterplot παρατηρούμε ότι για τιμές μεταξύ 175 και 215 παρατηρείται αύξηση των παρατηρήσεων καθώς αυξάνεται το βάρος των πακέτων.
Επιπλέον, υπάρχει μεγαλύτερη συγκέντρωση τιμών για βάρη κάτω από 2 κιλά, καθώς και μεταξύ 4 και 6 κιλών, με τα πακέτα βάρους 2-4 κιλών να περιορίζονται αυστηρά σε τιμές μεταξύ 175 και 275.
ggplot(ShipmentData, aes(x = Mode_of_Shipment, y = Weight_in_gms, color = Mode_of_Shipment)) +
geom_boxplot() +
labs(
title = "Weight Distribution by Mode of Shipment",
x = "Mode of Shipment",
y = "Weight (grams)")Από το συγκεκριμένο Βoxplot παρατηρούμε ότι η μέση τιμή του βάρους στις διαφορετικές μεθόδους μεταφοράς δεν παρουσιάζει σημαντική διαφορά.
Ωστόσο, το ανώτατο όριο του βάρους (ταβάνι) είναι χαμηλότερο στις αεροπορικές μεταφορές, υψηλότερο στις θαλάσσιες μεταφορές και ενδιάμεσο στις οδικές μεταφορές. Το γεγονός αυτό πιθανώς οφείλεται στη χωρητικότητα των μεταφορικών μέσων.
Επιπλέον, από το ακόλουθο Boxplot, παρατηρούμε μια θετική συσχέτιση μεταξύ του αριθμού των κλήσεων για την ενημέρωση σχετικά με τη μεταφορά του πακέτου και της τιμής του. Το αποτέλεσμα αυτό είναι αναμενόμενο, καθώς ακριβότερα πακέτα ενδέχεται να απαιτούν περισσότερη επικοινωνία και υποστήριξη κατά τη διαδικασία της μεταφοράς όπως και ενδιαφέρον απο τον παραλήπτη.
ggplot(ShipmentData, aes(x = factor(Customer_care_calls), y = Cost_of_the_Product)) +
geom_boxplot(fill = "lightblue", color = "black", outlier.color = "red", outlier.shape = 16) +
labs(
title = "Distribution of Product Cost by Customer Care Calls",
x = "Number of Customer Care Calls",
y = "Cost of the Product (USD)"
) +
theme_minimal() +
theme(plot.title = element_text(hjust = 0.5, size = 14, face = "bold"))ggplot(ShipmentData, aes(Discount_offered ))+geom_histogram(fill="lightblue", color="black", binwidth = 5)Από το Histogram του ποσού έκπτωσης παρατηρούμε ότι οι περισσότερες τιμές βρίσκονται κάτω από το 10, ενώ για τιμές μεγαλύτερες του 12 η κατανομή εμφανίζεται σχετικά ομοιόμορφη.
Από το Bar Chart της σημασίας των μεταφερόμενων προϊόντων παρατηρούμε ότι μεταφέρονται σημαντικά περισσότερα προϊόντα μικρής και μεσαίας ποιότητας, με τον αριθμό των μεταφορών να υπερβαίνει τις 4.000.