In diesem Projekt wird ein historischer Datensatz von Our World in Data zur Verbreitung von Informations- und Kommunikationstechnologien analysiert. Die Daten enthalten jährliche Kennzahlen zu Festnetzanschlüssen, Mobilfunkverträgen und Internetabonnements für verschiedene Länder und Regionen.
In welchem Jahr wurde das analoge Festnetz in der Europäischen Union vom Mobilfunk überholt und wie stark unterscheidet sich das Tempo dieser Transformation im Vergleich zwischen ausgewählten EU-Staaten?
library(readr)
library(dplyr)
##
## Attaching package: 'dplyr'
## The following objects are masked from 'package:stats':
##
## filter, lag
## The following objects are masked from 'package:base':
##
## intersect, setdiff, setequal, union
# Datensatz einlesen
ict_data <- read_csv("/Users/consti/Desktop/ict-adoption.csv")
## Rows: 13342 Columns: 7
## ── Column specification ────────────────────────────────────────────────────────
## Delimiter: ","
## chr (2): Entity, Code
## dbl (5): Year, Landline phone subscriptions, Landline Internet subscriptions...
##
## ℹ Use `spec()` to retrieve the full column specification for this data.
## ℹ Specify the column types or set `show_col_types = FALSE` to quiet this message.
# 3. Ersten Überblick über die Struktur verschaffen
str(ict_data)
## spc_tbl_ [13,342 × 7] (S3: spec_tbl_df/tbl_df/tbl/data.frame)
## $ Entity : chr [1:13342] "Afghanistan" "Afghanistan" "Afghanistan" "Afghanistan" ...
## $ Code : chr [1:13342] "AFG" "AFG" "AFG" "AFG" ...
## $ Year : num [1:13342] 1960 1961 1962 1963 1964 ...
## $ Landline phone subscriptions : num [1:13342] 7700 7700 7700 7700 7700 9300 9300 9300 9300 9300 ...
## $ Landline Internet subscriptions: num [1:13342] NA NA NA NA NA NA NA NA NA NA ...
## $ Mobile phone subscriptions : num [1:13342] 0 NA NA NA NA 0 NA NA NA NA ...
## $ Internet users : num [1:13342] NA NA NA NA NA NA NA NA NA NA ...
## - attr(*, "spec")=
## .. cols(
## .. Entity = col_character(),
## .. Code = col_character(),
## .. Year = col_double(),
## .. `Landline phone subscriptions` = col_double(),
## .. `Landline Internet subscriptions` = col_double(),
## .. `Mobile phone subscriptions` = col_double(),
## .. `Internet users` = col_double()
## .. )
## - attr(*, "problems")=<externalptr>
head(ict_data)
## # A tibble: 6 × 7
## Entity Code Year `Landline phone subscriptions` Landline Internet sub…¹
## <chr> <chr> <dbl> <dbl> <dbl>
## 1 Afghanistan AFG 1960 7700 NA
## 2 Afghanistan AFG 1961 7700 NA
## 3 Afghanistan AFG 1962 7700 NA
## 4 Afghanistan AFG 1963 7700 NA
## 5 Afghanistan AFG 1964 7700 NA
## 6 Afghanistan AFG 1965 9300 NA
## # ℹ abbreviated name: ¹`Landline Internet subscriptions`
## # ℹ 2 more variables: `Mobile phone subscriptions` <dbl>,
## # `Internet users` <dbl>
# 1. Spaltennamen vereinfachen für leichteres Arbeiten in R
# (Aus langen Namen machen wir kurze, prägnante Variablen)
ict_cleaned <- ict_data %>%
rename(
Landline = `Landline phone subscriptions`,
Broadband = `Landline Internet subscriptions`,
Mobile = `Mobile phone subscriptions`,
Users = `Internet users`
)
# 2. Daten auf die europäische Ebene filtern
# Wir filtern nach der aggregierten EU-27 Region, um den europäischen Tipping Point zu finden,
# und schließen Jahre vor 1980 aus, da dort Breitband und Internet noch keine Rolle spielten.
europe_macro <- ict_cleaned %>%
filter(Entity == "European Union (27)" & Year >= 1980)
# 3. Erste qualitative Überprüfung der gefilterten Daten (Datenqualität checken)
# Gibt es fehlende Werte (NAs) in unseren Kernjahren?
summary(europe_macro)
## Entity Code Year Landline
## Length:43 Length:43 Min. :1980 Min. : 86979510
## Class :character Class :character 1st Qu.:1990 1st Qu.:145572995
## Mode :character Mode :character Median :2001 Median :176222020
## Mean :2001 Mean :166359844
## 3rd Qu.:2012 3rd Qu.:196328290
## Max. :2022 Max. :207636130
##
## Broadband Mobile Users
## Min. : 1631668 Min. : 23482 Min. : NA
## 1st Qu.: 59329737 1st Qu.: 2486324 1st Qu.: NA
## Median :120106101 Median :270663803 Median : NA
## Mean :102284429 Mean :262690176 Mean :NaN
## 3rd Qu.:147011229 3rd Qu.:537082641 3rd Qu.: NA
## Max. :172887839 Max. :552315605 Max. : NA
## NA's :20 NA's :43
In diesem Schritt wird der historische Höchststand der klassischen Festnetztelefonie in der EU ermittelt, ab dem die absolute Anzahl der Anschlüsse rückläufig war.
# 1. Das Jahr des absoluten Höchststands (Peak) der Festnetztelefonie in der EU finden
peak_landline <- europe_macro %>%
filter(!is.na(Landline)) %>%
filter(Landline == max(Landline)) %>%
select(Year, Landline)
print("Historischer Höhepunkt der Festnetztelefonie in der EU:")
## [1] "Historischer Höhepunkt der Festnetztelefonie in der EU:"
print(peak_landline)
## # A tibble: 1 × 2
## Year Landline
## <dbl> <dbl>
## 1 2002 207636130
Es wird das exakte Jahr bestimmt, in dem die Anzahl der Mobilfunkverträge die der klassischen Festnetzanschlüsse in Europa zum ersten Mal überstiegen hat.
# 2. Den genauen Umschlagpunkt (Tipping Point) finden:
# In welchem Jahr gab es in der EU erstmals mehr Mobilfunkverträge als Festnetzanschlüsse?
tipping_point <- europe_macro %>%
filter(Mobile > Landline) %>%
filter(Year == min(Year)) %>%
select(Year, Landline, Mobile)
print("Der Umschlagpunkt (Mehr Mobilfunk als Festnetz) in der EU:")
## [1] "Der Umschlagpunkt (Mehr Mobilfunk als Festnetz) in der EU:"
print(tipping_point)
## # A tibble: 1 × 3
## Year Landline Mobile
## <dbl> <dbl> <dbl>
## 1 2000 204877920 217806189
# 3. Den aktuellen Stand der Digitalisierung (jüngster Datenpunkt im Datensatz) anzeigen
latest_stand <- europe_macro %>%
filter(Year == max(Year))
print("Letzter erfasster Datenstand für die EU:")
## [1] "Letzter erfasster Datenstand für die EU:"
print(latest_stand)
## # A tibble: 1 × 7
## Entity Code Year Landline Broadband Mobile Users
## <chr> <chr> <dbl> <dbl> <dbl> <dbl> <dbl>
## 1 European Union (27) OWID_EU27 2022 155004600 172887839 552315605 NA
# 1. Paket für professionelle Grafiken laden (falls nötig: install.packages("ggplot2"))
library(ggplot2)
Die erstellte Grafik visualisiert den historischen Gesamtverlauf und verdeutlicht das Kreuzen der beiden Infrastruktur-Kurven um die Jahrtausendwende.
# 2. Erstellung des Liniendiagramms für die Europäische Union
ggplot(europe_macro, aes(x = Year)) +
# Linie für Festnetz (analog)
geom_line(aes(y = Landline, color = "Festnetz (Analog)"), size = 1.2) +
# Linie für Mobilfunk (digital/mobil)
geom_line(aes(y = Mobile, color = "Mobilfunk"), size = 1.2) +
# Linie für die Internetnutzer (digitale Teilhabe)
geom_line(aes(y = Users, color = "Internetnutzer"), size = 1.2) +
# Kosmetische Anpassungen und Beschriftungen laut Vorlesung
labs(
title = "Der digitale Tipping Point in Europa (EU-27)",
subtitle = "Der Rückgang des Festnetzes im Vergleich zum Aufstieg digitaler Konnektivität",
x = "Jahr",
y = "Absolute Anzahl (Anschlüsse / Personen)",
color = "Technologie"
) +
theme_minimal() +
scale_color_manual(values = c("Festnetz (Analog)" = "darkred", "Mobilfunk" = "darkblue", "Internetnutzer" = "darkgreen"))
## Warning: Using `size` aesthetic for lines was deprecated in ggplot2 3.4.0.
## ℹ Please use `linewidth` instead.
## This warning is displayed once per session.
## Call `lifecycle::last_lifecycle_warnings()` to see where this warning was
## generated.
## Warning: Removed 43 rows containing missing values or values outside the scale range
## (`geom_line()`).
# Ländervergleich: Die europäische Schere Um länderspezifische
Unterschiede beim Rückbau der analogen Infrastruktur zu analysieren,
werden die Daten nach Staaten aufgeteilt. Die Grafik vergleicht hierzu
die Entwicklung in Deutschland, Estland und Rumänien ab dem Jahr
1995.
# 1. Teildatensatz für den Ländervergleich erstellen
europe_compare <- ict_cleaned %>%
filter(Entity %in% c("Germany", "Estonia", "Romania") & Year >= 1995)
# 2. Visualisierung: Wie unterschiedlich verläuft der Festnetz-Rückbau?
ggplot(europe_compare, aes(x = Year, y = Landline, color = Entity)) +
geom_line(size = 1.2) +
labs(
title = "Die europäische Schere: Rückgang des Festnetzes im Vergleich",
subtitle = "Vergleich des analogen Rückbaus zwischen verschiedenen EU-Staaten",
x = "Jahr",
y = "Absolute Anzahl Festnetzanschlüsse",
color = "Land"
) +
theme_minimal() +
facet_wrap(~Entity, scales = "free_y") # Erstellt separate Diagramme pro Land mit angepasster Y-Achse
# Sauberen Abschlussbericht vorbereiten (Strukturierte Ausgabe der Kernergebnisse)
cat(
"--- DATA SCIENCE PROJEKT: FAZIT ---\n",
"Forschungsfrage: Digitale Konnektivität in Europa - Von der Option zur Notwendigkeit\n\n",
"Kernergebnisse der explorativen Analyse:\n",
"- Der europaweite Rückbau des Festnetzes begann nach dem Erreichen des historischen Peaks.\n",
"- Der Umschlagpunkt (Mobilfunk überholt Festnetz) setzte in den frühen 2000er-Jahren ein.\n",
"- Der Ländervergleich zeigt eine deutliche digitale Spaltung (Divergenz) in Europa:\n",
" Während digitale Vorreiter (wie Estland) die analoge Struktur extrem früh und steil \n",
" abgebaut haben, verläuft die Kurve in Ländern wie Deutschland und Rumänien deutlich verzögerter.\n"
)
## --- DATA SCIENCE PROJEKT: FAZIT ---
## Forschungsfrage: Digitale Konnektivität in Europa - Von der Option zur Notwendigkeit
##
## Kernergebnisse der explorativen Analyse:
## - Der europaweite Rückbau des Festnetzes begann nach dem Erreichen des historischen Peaks.
## - Der Umschlagpunkt (Mobilfunk überholt Festnetz) setzte in den frühen 2000er-Jahren ein.
## - Der Ländervergleich zeigt eine deutliche digitale Spaltung (Divergenz) in Europa:
## Während digitale Vorreiter (wie Estland) die analoge Struktur extrem früh und steil
## abgebaut haben, verläuft die Kurve in Ländern wie Deutschland und Rumänien deutlich verzögerter.
Die explorative Analyse liefert folgende Kernergebnisse zur digitalen Transformation in Europa: Struktureller Umbruch: Die Wachstums- und Schrumpfungsprozesse setzten extrem dynamisch ein; der Mobilfunk überholte das Festnetz in der EU bereits im Jahr 2000. Digitale Spaltung (Divergenz): Der Ländervergleich zeigt erhebliche Unterschiede in der Geschwindigkeit des Wandels. Während digitale Vorreiter wie Estland die alte Infrastruktur extrem früh und steil abgebaut haben, verläuft dieser Prozess in Deutschland und Rumänien deutlich verzögerter.