Το συγκεκριμένο σύνολο δεδομένων περιέχει ιστορικά στοιχεία πωλήσεων από 45 καταστήματα της Walmart που βρίσκονται σε διαφορετικές περιοχές των ΗΠΑ. Περιλαμβάνει εβδομαδιαία δεδομένα για μια περίοδο περίπου 3 ετών (2010-2012).
Πηγή: Το dataset προέρχεται αρχικά από έναν διαγωνισμό του Kaggle (Walmart Recruiting - Store Sales Forecasting).
Περιλαμβάνει τις πωλήσεις,δείκτες όπως η θερμοκρασία, η τιμή των καυσίμων και ο δείκτης τιμών καταναλωτή (CPI), επιτρέποντας μια ολιστική προσέγγιση της επιχειρηματικής απόδοσης.
Predictive Analytics: Επιτρέπει τη δημιουργία μοντέλων πρόβλεψης ζήτησης (Forecasting), που είναι κρίσιμο για τη διαχείριση αποθεμάτων.
Diagnostic Analytics: Μπορούμε να αναλύσουμε πώς εξωτερικοί παράγοντες (π.χ. ανεργία ή εορταστικές περίοδοι) επηρεάζουν τα έσοδα.
Prescriptive Analytics: Βοηθά στη λήψη αποφάσεων για το πότε πρέπει να γίνουν προσφορές ή πώς να προσαρμοστεί η εφοδιαστική αλυσίδα ανάλογα με την εποχικότητα.
Μερικά ερωτήματα που μπορούν να απαντηθούν μέσω της ανάλυσης σχετίζονται με:
Εποχικότητα: Πόσο αυξάνονται οι πωλήσεις κατά τη διάρκεια των μεγάλων εορτών (π.χ. Super Bowl, Thanksgiving, Christmas) σε σχέση με τις υπόλοιπες εβδομάδες;
Επιρροή Μακροοικονομίας: Υπάρχει συσχέτιση μεταξύ του δείκτη ανεργίας (Unemployment) ή του πληθωρισμού (CPI) και της αγοραστικής δύναμης των καταναλωτών;
Ευαισθησία Τιμών Καυσίμων: Επηρεάζει η αύξηση της τιμής των καυσίμων τις πωλήσεις (ίσως λόγω λιγότερων επισκέψεων στο κατάστημα);
Σύγκριση Καταστημάτων: Ποια καταστήματα παρουσιάζουν τη μεγαλύτερη ανάπτυξη και ποια είναι πιο ευάλωτα στις καιρικές συνθήκες (Temperature);
Store: Αναγνωριστικός αριθμός του καταστήματος (1-45).
Date: Η εβδομαδιαία ημερομηνία καταγραφής των δεδομένων (2010-2012).
Weekly_Sales: Ο συνολικός κύκλος εργασιών του καταστήματος ανά εβδομάδα (σε $). Είναι η κύρια μεταβλητή προς ανάλυση.
Holiday_Flag: Δυαδική ένδειξη (0 ή 1) για το αν η εβδομάδα περιλαμβάνει μεγάλη εθνική αργία.
Temperature: Η μέση θερμοκρασία της περιοχής κατά την εβδομάδα καταγραφής (σε °F).
Fuel_Price: Το κόστος των καυσίμων στην περιοχή (σε $ ανά γαλόνι).
CPI (Consumer Price Index): Ο Δείκτης Τιμών Καταναλωτή που αποτυπώνει τον πληθωρισμό και το κόστος ζωής.
Unemployment: Το ποσοστό ανεργίας (%) στην περιοχή του καταστήματος, ως δείκτης της τοπικής οικονομικής κατάστασης.
library(tidyverse)
library(knitr)
# Φόρτωση
Walmart <- read.csv("Walmart.csv")
# Συνάρτηση για Mode
get_mode <- function(v) {
uniqv <- unique(v)
uniqv[which.max(tabulate(match(v, uniqv)))]
}
# Επιλογή στηλών ανάλυσης (εκτος holiday flag και store)
target_vars <- Walmart %>%
select(Weekly_Sales, Temperature, Fuel_Price, CPI, Unemployment)
# Υπολογισμός στατιστικών
final_stats <- data.frame(
Μεταβλητή = colnames(target_vars),
Μέσος_Όρος = sapply(target_vars, mean, na.rm = TRUE),
Διάμεσος = sapply(target_vars, median, na.rm = TRUE),
Επικρατούσα = sapply(target_vars, get_mode),
Τυπ_Απόκλιση = sapply(target_vars, sd, na.rm = TRUE),
Διακύμανση = sapply(target_vars, var, na.rm = TRUE),
Ελάχιστο = sapply(target_vars, min, na.rm = TRUE),
Μέγιστο = sapply(target_vars, max, na.rm = TRUE)
)
# Εμφάνιση πίνακα
kable(final_stats, digits = 2)| Μεταβλητή | Μέσος_Όρος | Διάμεσος | Επικρατούσα | Τυπ_Απόκλιση | Διακύμανση | Ελάχιστο | Μέγιστο | |
|---|---|---|---|---|---|---|---|---|
| Weekly_Sales | Weekly_Sales | 1046964.88 | 960746.04 | 1643690.90 | 564366.62 | 3.185097e+11 | 209986.25 | 3818686.45 |
| Temperature | Temperature | 60.66 | 62.67 | 50.43 | 18.44 | 3.402200e+02 | -2.06 | 100.14 |
| Fuel_Price | Fuel_Price | 3.36 | 3.44 | 3.64 | 0.46 | 2.100000e-01 | 2.47 | 4.47 |
| CPI | CPI | 171.58 | 182.62 | 126.44 | 39.36 | 1.548950e+03 | 126.06 | 227.23 |
| Unemployment | Unemployment | 8.00 | 7.87 | 8.10 | 1.88 | 3.520000e+00 | 3.88 | 14.31 |
library(tidyverse)
library(knitr)
# Επιλογή των αριθμητικών μεταβλητών για τη συσχέτιση
numeric_data <- Walmart %>%
select(Weekly_Sales, Temperature, Fuel_Price, CPI, Unemployment)
# Υπολογισμός συντελεστών συσχέτισης
cor_matrix <- cor(numeric_data, use = "complete.obs")
# Παρουσίαση πίνακα
kable(cor_matrix, digits = 3, caption = "Πίνακας Συσχετίσεων (Correlation Matrix)")| Weekly_Sales | Temperature | Fuel_Price | CPI | Unemployment | |
|---|---|---|---|---|---|
| Weekly_Sales | 1.000 | -0.064 | 0.009 | -0.073 | -0.106 |
| Temperature | -0.064 | 1.000 | 0.145 | 0.177 | 0.101 |
| Fuel_Price | 0.009 | 0.145 | 1.000 | -0.171 | -0.035 |
| CPI | -0.073 | 0.177 | -0.171 | 1.000 | -0.302 |
| Unemployment | -0.106 | 0.101 | -0.035 | -0.302 | 1.000 |
Ανεργία και Πωλήσεις (Unemployment vs Weekly_Sales): Παρατηρείται μια αρνητική συσχέτιση. Αυτό σημαίνει ότι καθώς ο δείκτης ανεργίας αυξάνεται, οι εβδομαδιαίες πωλήσεις τείνουν να μειώνονται. Η σχέση αυτή αναδεικνύει την ευαισθησία των εσόδων της Walmart στην οικονομική κατάσταση των τοπικών κοινωνιών.
Τιμή Καυσίμων και Πωλήσεις (Fuel_Price vs Weekly_Sales): Συνήθως η συσχέτιση εδώ είναι πολύ χαμηλή (κοντά στο 0). Αυτό υποδηλώνει ότι οι καταναλωτές συνεχίζουν να επισκέπτονται το κατάστημα για βασικά αγαθά, ακόμη και αν το κόστος μετακίνησης αυξάνεται, γεγονός που δείχνει την ανελαστικότητα της ζήτησης για τα προϊόντα της Walmart.
CPI και Πωλήσεις (CPI vs Weekly_Sales): Εδώ συχνά εντοπίζεται μια ασθενής αρνητική σχέση. Ο υψηλός πληθωρισμός (CPI) μειώνει την αγοραστική δύναμη, γεγονός που αντικατοπτρίζεται σε μια ελαφρά πίεση προς τα κάτω στα έσοδα.
library(ggplot2)
#Istogramma
ggplot(Walmart, aes(x = Weekly_Sales)) +
geom_histogram(fill = "blue", color = "white", bins = 30) +
labs(
title = "Distribution of Weekly Sales",
x = "Weekly Sales",
y = "Frequency"
)#Scatterplot
ggplot(Walmart, aes(x = Unemployment, y = Weekly_Sales)) +
geom_point(color = "darkgreen", alpha = 0.4) +
geom_smooth(method = "lm", color = "red") +
theme_minimal()## `geom_smooth()` using formula = 'y ~ x'
#Boxplot
ggplot(Walmart, aes(x = factor(Holiday_Flag), y = Weekly_Sales)) +
geom_boxplot(fill = "blue") +
labs(
title = "Weekly Sales during Holiday vs Non-Holiday",
x = "Holiday Week",
y = "Weekly Sales"
)#Υπολογισμός μέσων πωλήσεων
sales_summary <- Walmart %>%
group_by(Holiday_Flag) %>%
summarise(mean_sales = mean(Weekly_Sales))
# Bar chart
ggplot(sales_summary, aes(x = factor(Holiday_Flag), y = mean_sales, fill = factor(Holiday_Flag))) +
geom_col() +
labs(
title = "Μέσες Εβδομαδιαίες Πωλήσεις: Holiday vs Non-Holiday",
x = "Holiday Week (0 = No, 1 = Yes)",
y = "Average Weekly Sales",
fill = "Holiday"
) +
theme_minimal()