Ich habe verschiedene Analysen durchgeführt, jeweils mit den Views als abhängige Variable
Frage: Beeinflusst die Art des Contents die Anzahl Views auf der Plattform Instagram?
library(tidyr)
## Warning: Paket 'tidyr' wurde unter R Version 4.4.2 erstellt
library(ggplot2)
## Warning: Paket 'ggplot2' wurde unter R Version 4.4.2 erstellt
#### Datensat einlesen und vorbereiten
data <- read.csv("C:/Users/Marlene/Documents/R_Files/Engagement_Tracker_Plus.csv", sep = ";", encoding = "UTF-8")
# Spalten umbenennen
names(data)[names(data) == "Art.des.Contents"] <- "content_type"
names(data)[names(data) == "Block"] <- "time_block"
names(data)[names(data) == "IG.views.3h"] <- "views_IG"
names(data)[names(data) == "Weekday"] <- "weekday"
# content_type umwandeln
data$content_type <- factor(data$content_type)
# Einfaktorielle ANOVA mit content_type
anova_result <- aov(views_IG ~ content_type, data = data)
summary(anova_result)
## Df Sum Sq Mean Sq F value Pr(>F)
## content_type 3 2202265 734088 1.736 0.194
## Residuals 19 8034582 422873
Ergebnis: p-Wert = 0.194 -> nicht signifikant
aggregate(views_IG ~ content_type, data = data, mean)
## content_type views_IG
## 1 1 1937.429
## 2 2 1665.889
## 3 3 2074.500
## 4 4 1049.000
Ergebnis:
Frage: Haben time_block, weekday oder ihre Kombination einen Einfluss auf views_IG?
data$time_block <- factor(data$time_block)
data$weekday <- factor(data$weekday)
anova_2way <- aov(views_IG ~ time_block * weekday, data = data)
summary(anova_2way)
## Df Sum Sq Mean Sq F value Pr(>F)
## time_block 3 339427 113142 0.125 0.939
## weekday 6 1531939 255323 0.282 0.913
## time_block:weekday 10 5645795 564580 0.623 0.751
## Residuals 3 2719685 906562
Ergebnis:
ich habe den Datensatz von der breiten in die lange Form überführt, sodass jede Kombination aus Beitrag und Plattform als eigene Beobachtung behandelt wird, damit haben wir eine größere Stichprobe. Da es sich um identische Beiträge handelt, die parallel auf mehreren Plattformen veröffentlicht wurden, liegen keine vollständig unabhängigen Beobachtungen vor. Für eine explorative Analyse ist das aber in Ordnung. Die Ergebnisse sind entsprechend eher als beschreibend und hypothesengenerierend zu verstehen.
# Datensatz umbauen für größere Stichprobe -> long format
names(data)[names(data) == "TT.views.3h"] <- "views_TT"
names(data)[names(data) == "YT.views.3h"] <- "views_YT"
# Neuen Datensatz mit ausgewählten Spalten erstellen
data_selected <- data[, c("Reel", "weekday", "content_type", "time_block",
"views_IG", "views_TT", "views_YT")]
# Datensatz in long-format umwandeln
data_long <- pivot_longer(data_selected,
cols = c("views_IG", "views_TT", "views_YT"),
names_to = "plattform",
values_to = "views")
# In Faktro umwanden
data_long$weekday <- factor(data_long$weekday)
data_long$time_block <- factor(data_long$time_block)
head(data_long)
## # A tibble: 6 × 6
## Reel weekday content_type time_block plattform views
## <chr> <fct> <fct> <fct> <chr> <int>
## 1 Rechnen ohne Taschenrechner Tuesday 1 1 views_IG 3236
## 2 Rechnen ohne Taschenrechner Tuesday 1 1 views_TT 1308
## 3 Rechnen ohne Taschenrechner Tuesday 1 1 views_YT 1249
## 4 Duzen oder Siezen Thursday 2 2 views_IG 2917
## 5 Duzen oder Siezen Thursday 2 2 views_TT 4330
## 6 Duzen oder Siezen Thursday 2 2 views_YT 1231
anova_long_2way <- aov(views ~ time_block * weekday, data = data_long)
summary(anova_long_2way)
## Df Sum Sq Mean Sq F value Pr(>F)
## time_block 3 621883 207294 0.448 0.7198
## weekday 6 3436930 572822 1.238 0.3035
## time_block:weekday 10 11012038 1101204 2.380 0.0218 *
## Residuals 49 22672127 462696
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
Ergebnis:
Wir lassen und die Gruppenmittelwerte geordnet anzeigen
# Gruppenmittelwerte anzeigen, geordnet Überblick über die mittleren Views je Kombination:
summary_df <- aggregate(views ~ weekday + time_block, data = data_long, mean)
summary_df[order(-summary_df$views), ]
## weekday time_block views
## 8 Thursday 2 2826.0000
## 11 Monday 3 2251.3333
## 14 Wednesday 3 1667.3333
## 3 Tuesday 1 1382.6667
## 19 Tuesday 4 1370.6667
## 18 Thursday 4 1361.3333
## 4 Friday 2 1358.6667
## 5 Monday 2 1208.6667
## 16 Monday 4 1197.6667
## 9 Wednesday 2 1183.6667
## 1 Monday 1 1181.6667
## 20 Wednesday 4 1168.3333
## 17 Saturday 4 1113.3333
## 7 Sunday 2 1031.6667
## 12 Thursday 3 931.0000
## 2 Thursday 1 912.6667
## 10 Friday 3 897.0000
## 13 Tuesday 3 893.6667
## 6 Saturday 2 793.3333
## 15 Friday 4 727.0000
Ergebnis: Top-Zeitpunkt: Donnerstag im Zeitblock 2!
Mögliche grafische Darstellung: Heatmap
library(ggplot2)
ggplot(summary_df, aes(x = time_block, y = weekday, fill = views)) +
geom_tile(color = "white") +
scale_fill_gradient(low = "lightblue", high = "darkblue") +
labs(title = "Durchschnittliche Views pro Wochentag und Zeitblock",
x = "Time Block", y = "Wochentag", fill = "Ø Views") +
theme_minimal() +
theme(axis.text.x = element_text(size = 12),
axis.text.y = element_text(size = 12),
plot.title = element_text(size = 14, face = "bold"))
data_long$plattform <- factor(data_long$plattform)
anova_3way <- aov(views ~ time_block * weekday * plattform, data = data_long)
summary(anova_3way)
## Df Sum Sq Mean Sq F value Pr(>F)
## time_block 3 621883 207294 0.550 0.6605
## weekday 6 3436930 572822 1.521 0.2743
## plattform 2 8522479 4261239 11.312 0.0035 **
## time_block:weekday 10 11012038 1101204 2.923 0.0609 .
## time_block:plattform 6 1069713 178286 0.473 0.8126
## weekday:plattform 12 1721021 143418 0.381 0.9392
## time_block:weekday:plattform 20 7968516 398426 1.058 0.4904
## Residuals 9 3390397 376711
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
Ergebnis:
aggregate(views ~ plattform, data = data_long, mean)
## plattform views
## 1 views_IG 1739.1304
## 2 views_TT 953.7391
## 3 views_YT 1041.1739
Ergebnis:
Da die Interaktion zwischen Zeitblock und Wochentag eben knapp signifiant (p=0.0609) und bei vorheriger Analyse signifikant (p = 0.0218) war, schauen wir uns nochmal die Gruppenmittelwerte an
summary_combo <- aggregate(views ~ weekday + time_block, data = data_long, mean)
summary_combo[order(-summary_combo$views), ]
## weekday time_block views
## 8 Thursday 2 2826.0000
## 11 Monday 3 2251.3333
## 14 Wednesday 3 1667.3333
## 3 Tuesday 1 1382.6667
## 19 Tuesday 4 1370.6667
## 18 Thursday 4 1361.3333
## 4 Friday 2 1358.6667
## 5 Monday 2 1208.6667
## 16 Monday 4 1197.6667
## 9 Wednesday 2 1183.6667
## 1 Monday 1 1181.6667
## 20 Wednesday 4 1168.3333
## 17 Saturday 4 1113.3333
## 7 Sunday 2 1031.6667
## 12 Thursday 3 931.0000
## 2 Thursday 1 912.6667
## 10 Friday 3 897.0000
## 13 Tuesday 3 893.6667
## 6 Saturday 2 793.3333
## 15 Friday 4 727.0000
Ergebnis:
Basierend auf der explorativen Analyse ist Instagram die Plattform mit den höchsten durchschnittlichen Views und einem statistisch signifikanten Vorteil gegenüber den anderen Plattformen. Außerdem zeigt sich, dass Donnerstag im Zeitblock2 die höchste durchschnittliche Reichweite erzielt, unabhängig von der Plattform.