R Markdown

Το dataset που χρησιμοποιείται σε αυτή την ανάλυση ονομάζεται Social Media Usage and Emotional Well‑Being και προέρχεται από την πλατφόρμα Kaggle.

Το dataset περιλαμβάνει δεδομένα σχετικά με τη συμπεριφορά των χρηστών στα κοινωνικά μέσα καθώς και την κυρίαρχη συναισθηματική κατάσταση των χρηστών.

Αντιπροσωπεύει πολύπλευρα επιχειρηματικά ενδιαφέροντα: η σχέση ανάμεσα στη χρήση social media και στη συναισθηματική ευεξία είναι κρίσιμη για εταιρείες που δραστηριοποιούνται σε digital marketing, UX design και στρατηγικές branding. Υπάρχει ποικιλία μεταβλητών, που επιτρέπουν στατιστική ανάλυση, μοντελοποίηση και clustering χρηστών.

Με αυτό το dataset μπορούν να διερευνηθούν σημαντικά επιχειρηματικά ερωτήματα, όπως:

Ποια είναι η σχέση ανάμεσα στον χρόνο χρήσης social media και την κυρίαρχη συναισθηματική κατάσταση; Τι είδους χρήστες (π.χ. ηλικιακές ομάδες, φύλο) εμφανίζουν συχνότερα αρνητικά συναισθήματα; Ποια πλατφόρμα κοινωνικών μέσων οδηγεί σε υψηλότερη ενεργή αλληλεπίδραση (π.χ. likes, σχόλια) και πώς αυτό σχετίζεται με την ευεξία των χρηστών;

Περιγραφή μεταβλητών: user_id: Μοναδικός αναγνωριστικός χρήστη age: Ηλικία χρήστη gender: Φύλο χρήστη platform: Πλατφόρμα κοινωνικού μέσου daily_usage_time_minutes: Χρόνος χρήσης ανά ημέρα(λεπτά) posts_per_day: Πλήθος δημοσιεύσεων/ημέρα likes_received_per_day: Likes που δέχεται ο χρήστης/ημέρα comments_received_per_day: Σχόλια που λαμβάνει ο χρήστης/ημέρα messages_sent_per_day: Πλήθος μηνυμάτων που στέλνονται/ημέρα dominant_emotion: Κυρίαρχη συναισθηματική κατάσταση device: Συσκευή που χρησιμοποιεί ο χρήστης

dataset <- read.csv("Social Media Usage and Emotional Well-Being - test.csv")

print("Μέτρα κεντρικής τάσης")
## [1] "Μέτρα κεντρικής τάσης"
# daily_usage_time_minutes
mean_daily <- mean(dataset$Daily_Usage_Time, na.rm = TRUE)
median_daily <- median(dataset$Daily_Usage_Time, na.rm = TRUE)

print("Daily Usage Time (λεπτά):")
## [1] "Daily Usage Time (λεπτά):"
print(paste("Μέσος όρος =", mean_daily))
## [1] "Μέσος όρος = 88.0097087378641"
print(paste("Διάμεσος =", median_daily))
## [1] "Διάμεσος = 75"
# messages_sent_per_day
mean_messages <- mean(dataset$Messages_Sent_Per_Day, na.rm = TRUE)
median_messages <- median(dataset$Messages_Sent_Per_Day, na.rm = TRUE)

print("Messages Sent Per Day:")
## [1] "Messages Sent Per Day:"
print(paste("Μέσος όρος =", mean_messages))
## [1] "Μέσος όρος = 20.3883495145631"
print(paste("Διάμεσος =", median_messages))
## [1] "Διάμεσος = 20"
print("Μέτρα διασποράς")
## [1] "Μέτρα διασποράς"
# Μέτρα διασποράς για ηλικία

range_age <- max(dataset$Age, na.rm = TRUE) - min(dataset$Age, na.rm = TRUE)

print("Ηλικία:")
## [1] "Ηλικία:"
print(paste("Εύρος =", range_age))
## [1] "Εύρος = 14"
# Μέτρα διασποράς για likes_received_per_day (άλλη μεταβλητή)
sd_likes <- sd(dataset$Likes_Received_Per_Day, na.rm = TRUE)

range_likes <- max(dataset$Likes_Received_Per_Day, na.rm = TRUE) - min(dataset$Likes_Received_Per_Day, na.rm = TRUE)

print("Likes Received Per Day:")
## [1] "Likes Received Per Day:"
print(paste("Τυπική απόκλιση =", sd_likes))
## [1] "Τυπική απόκλιση = 23.0314263983312"
print(paste("Εύρος =", range_likes))
## [1] "Εύρος = 105"
# 1. Posts_Per_Day και Daily_Usage_Time
corr1 <- cor(dataset$Posts_Per_Day, dataset$Daily_Usage_Time, use = "complete.obs")
print(paste("Συσχέτιση: Posts_Per_Day και Daily_Usage_Time =", round(corr1, 2)))
## [1] "Συσχέτιση: Posts_Per_Day και Daily_Usage_Time = 0.87"
# 2. Messages_Sent_Per_Day και Daily_Usage_Time
corr2 <- cor(dataset$Messages_Sent_Per_Day, dataset$Daily_Usage_Time, use = "complete.obs")
print(paste("Συσχέτιση: Messages_Sent_Per_Day και Daily_Usage_Time =", round(corr2, 2)))
## [1] "Συσχέτιση: Messages_Sent_Per_Day και Daily_Usage_Time = 0.87"
# 3. Comments_Received_Per_Day και Posts_Per_Day
corr3 <- cor(dataset$Comments_Received_Per_Day, dataset$Posts_Per_Day, use = "complete.obs")
print(paste("Συσχέτιση: Comments_Received_Per_Day και Posts_Per_Day =", round(corr3, 2)))
## [1] "Συσχέτιση: Comments_Received_Per_Day και Posts_Per_Day = 0.94"

Η μεταβλητή Posts_Per_Day σχετίζεται θετικά με το Daily_Usage_Time (r = 0.87). Δηλαδή, οι χρήστες που αφιερώνουν περισσότερο χρόνο στα social media κάνουν περισσότερες δημοσιεύσεις ανά ημέρα. Η μεταβλητή Messages_Sent_Per_Day σχετίζεται θετικά με το Daily_Usage_Time (r = 0.87). Δηλαδή, όσο περισσότερο χρόνο χρησιμοποιεί κάποιος social media, τόσο περισσότερα μηνύματα στέλνει. Η μεταβλητή Comments_Received_Per_Day σχετίζεται θετικά με το Posts_Per_Day (r = 0.94). Δηλαδή, όσοι δημοσιεύουν περισσότερες αναρτήσεις λαμβάνουν και περισσότερα σχόλια ανά ημέρα.

Including Plots

library(ggplot2)
ggplot(dataset, aes(x = Daily_Usage_Time, y = Posts_Per_Day)) +
  geom_point(color = "blue") +
  labs(title = "Σχέση Daily Usage Time και Posts Per Day",
       x = "Daily Usage Time (λεπτά)",
       y = "Posts Per Day") +
  theme_minimal()
## Warning: Removed 103 rows containing missing values or values outside the scale range
## (`geom_point()`).

Δείχνει τη σχέση μεταξύ χρόνου χρήσης και δημοσιεύσεων ανά ημέρα. Υπάρχει θετική συσχέτιση.

library(ggplot2)

ggplot(dataset, aes(y = Posts_Per_Day)) +
  geom_boxplot(fill = "lightgreen") +
  labs(title = "Boxplot για Posts Per Day",
       y = "Posts Per Day") +
  theme_minimal()
## Warning: Removed 103 rows containing non-finite outside the scale range
## (`stat_boxplot()`).

Το boxplot δίνει μια καλή εικόνα για την κατανομή και τη διασπορά των δημοσιεύσεων, και φαίνεται ότι η πλειονότητα των χρηστών έχει χαμηλό έως μέτριο αριθμό αναρτήσεων ανά ημέρα.

library(ggplot2)

ggplot(dataset, aes(x = Daily_Usage_Time)) +
  geom_histogram(binwidth = 15, fill = "orange", color = "black") +
  labs(title = "Ιστόγραμμα για Daily Usage Time",
       x = "Daily Usage Time (λεπτά)",
       y = "Συχνότητα") +
  theme_minimal()
## Warning: Removed 103 rows containing non-finite outside the scale range
## (`stat_bin()`).

Το ιστόγραμμα δείχνει την κατανομή των χρόνων χρήσης των social media ανά ημέρα. Μπορούμε να δούμε αν η πλειονότητα των χρηστών χρησιμοποιεί λίγο ή πολύ χρόνο καθημερινά.

library(ggplot2)

ggplot(dataset, aes(x = Posts_Per_Day)) +
  geom_bar(fill = "purple") +
  labs(title = "Bar Chart για Posts Per Day",
       x = "Posts Per Day",
       y = "Συχνότητα") +
  theme_minimal()
## Warning: Removed 103 rows containing non-finite outside the scale range
## (`stat_count()`).

Το bar chart δείχνει πόσοι χρήστες κάνουν συγκεκριμένο αριθμό δημοσιεύσεων ανά ημέρα.