* Hier ist die Erklärung des Codes als Markdown-Datei, einfach und Schritt für Schritt:

`markdown # Erklärung des R-Codes: Umfrage-Datenanalyse

1. Pakete installieren und ladenr

library(tidyverse)   # Sammlung von Paketen für Datenbearbeitung und Visualisierung
## ── Attaching core tidyverse packages ──────────────────────── tidyverse 2.0.0 ──
## ✔ dplyr     1.1.4     ✔ readr     2.1.5
## ✔ forcats   1.0.1     ✔ stringr   1.6.0
## ✔ ggplot2   4.0.0     ✔ tibble    3.3.0
## ✔ lubridate 1.9.4     ✔ tidyr     1.3.1
## ✔ purrr     1.1.0     
## ── Conflicts ────────────────────────────────────────── tidyverse_conflicts() ──
## ✖ dplyr::filter() masks stats::filter()
## ✖ dplyr::lag()    masks stats::lag()
## ℹ Use the conflicted package (<http://conflicted.r-lib.org/>) to force all conflicts to become errors
library(httr)        # Für HTTP-Anfragen (z. B. Daten von Webseiten laden)
library(readr)       # Zum Einlesen von Tabellen (z. B. CSV, TSV)
  • Was passiert hier? Der Code lädt drei Pakete, die für die Datenanalyse benötigt werden:
    • tidyverse: Hilft, Daten zu bereinigen, umzuformen und zu visualisieren.
  • httr: Wird genutzt, um Daten aus dem Internet herunterzuladen (hier nicht direkt verwendet, aber geladen).
  • readr: Liest Tabellen-Daten (z. B. Excel-ähnliche Dateien) in R ein.

## 2. Daten importierenr # URL der Datei (wo die Daten im Internet liegen)

 url <- "https://raw.githubusercontent.com/rstudio/r-community-survey/master/2020/data/2020-english-survey-final.tsv"

Lade die Datei direkt in einen Data Frame (eine Art Tabelle in R)

survey_english <- read_tsv(url)

Zeige die ersten 6 Zeilen der Tabelle an

head(survey_english)

  1. Die Daten werden mit read_tsv() heruntergeladen und in eine Tabelle (survey_english) geladen.
  2. head(survey_english) zeigt die ersten 6 Zeilen der Tabelle an, um einen Überblick zu bekommen.

## 3. Daten analysieren und visualisierenr survey_english |> count(Qr_how_often_used, Qr_experience) |> arrange(Qr_how_often_used, desc(n)) |> group_by(Qr_how_often_used) |> mutate(percent = n / sum(n) * 100) |> ungroup() |> ggplot(aes(x = Qr_how_often_used, y = n, fill = Qr_experience)) + geom_col(position = “dodge”) + labs( title = “R Community Survey 2020: Experience with R”, x = “How often R is used”, y = “Number of respondents”, fill = “Experience level” ) + theme_minimal()

Schritt-für-Schritt-Erklärung:

  1. Daten zählen (count) r count(Qr_how_often_used, Qr_experience)
  • Zählt, wie oft jede Kombination aus
  • Qr_how_often_used (Wie oft wird R genutzt? z. B. “täglich”, “wöchentlich”)
  • Qr_experience (Erfahrungslevel, z. B. “Anfänger”, “Fortgeschritten”)
  • vorkommt.
  • Ergebnis: Eine neue Tabelle mit den Spalten:
    • Qr_how_often_used
  • Qr_experience
  • n (Anzahl der Antworten pro Kombination).
  1. Sortieren (arrange) r arrange(Qr_how_often_used, desc(n))
  • Sortiert die Ergebnisse nach Qr_how_often_used (z. B. “täglich” zuerst).
  • Innerhalb jeder Gruppe wird nach n (Anzahl) absteigend sortiert (desc(n)).
  1. Prozent berechnen (group_by + mutate) r group_by(Qr_how_often_used) |> mutate(percent = n / sum(n) * 100)
  • Gruppiert die Daten nach Qr_how_often_used.
  • Berechnet für jede Gruppe den Prozentanteil jeder Erfahrungskategorie (Qr_experience).
  • Beispiel: Wenn 100 Leute “täglich” R nutzen und davon 30 Anfänger sind, dann sind das 30%.
  1. Gruppierung aufheben (ungroup) r ungroup()
  • Macht die Gruppierung rückgängig, damit spätere Schritte nicht beeinflusst werden.
  1. Diagramm erstellen (ggplot) r ggplot(aes(x = Qr_how_often_used, y = n, fill = Qr_experience)) + geom_col(position = “dodge”) + labs(…) + theme_minimal()
  • Was wird dargestellt? Ein Balkendiagramm, das zeigt:
    • X-Achse: Wie oft R genutzt wird (Qr_how_often_used).
  • Y-Achse: Anzahl der Antworten (n).
  • Farbe der Balken: Erfahrunglevel (Qr_experience).
  • position = "dodge": Die Balken werden nebeneinander statt übereinander angezeigt.
  • labs(): Fügt Titel und Achsenbeschriftungen hinzu.
  • theme_minimal(): Macht das Diagramm schlicht und übersichtlich.

### Zusammenfassung: Was zeigt das Diagramm? - Frage: Wie hängt die Häufigkeit der R-Nutzung mit dem Erfahrungslevel zusammen? - Antwort: - Zeigt z. B., ob Anfänger R seltener nutzen als Fortgeschrittene. - Oder ob die meisten täglichen Nutzer Experten sind.

### Beispiel-Ausgabe (wie das Diagramm aussehen könnte): Beispiel-Balkendiagramm (Hinweis: Das ist ein Platzhalter – der echte Plot sieht ähnlich aus, aber mit den Umfragedaten.)

### Wichtige Begriffe: | Begriff | Erklärung | |——————|—————————————————————————| | Data Frame | Eine Tabelle in R (wie Excel). | | Pipe (|>) | Leitet das Ergebnis eines Schritts zum nächsten weiter (wie ein Fließband). | | ggplot | Ein Paket zum Erstellen von Diagrammen. | | count() | Zählt Kombinationen von Werten in Spalten. | | group_by() | Fasst Daten nach einer Spalte zusammen (z. B. für Prozentberechnungen). |

—`

Zusatzinfo für Nicht-ITler:

  • Warum so viele %>% oder |>? Das ist wie ein Fließband: Jeder Schritt (count, arrange, …) bekommt die Daten vom vorherigen Schritt und gibt sie weiter.

  • Beispiel: Daten → Zählen → Sortieren → Prozent berechnen → Diagramm erstellen.

  • Was ist aes() in ggplot? Steht für “Ästhetik” – hier wird definiert, welche Daten auf welche Achse oder Farbe gemappt werden.

Falls etwas unklar ist, frag gern nach! 😊