R - Datenumgestaltung: Ein Anfängerleitfaden
Hallo da draußen, zukünftige R-Programmierer! Heute machen wir uns auf eine aufregende Reise in die Welt der Datenumgestaltung in R. Machen Sie sich keine Sorgen, wenn Sie noch nie programmiert haben – ich werde Ihr freundlicher Guide sein, und wir werden dies Schritt für Schritt durchgehen. Am Ende dieses Tutorials werden Sie Daten wie ein Profi umgestalten können!
Was ist Datenumgestaltung?
Bevor wir eintauchen, lassen Sie uns darüber sprechen, was Datenumgestaltung eigentlich bedeutet. Stellen Sie sich vor, Sie haben eine Menge Lego-Steine. Datenumgestaltung ist wie das Umräumen dieser Steine, um verschiedene Strukturen zu bauen. In R machen wir dasselbe mit unseren Daten – wir reorganisieren sie, um sie für die Analyse nützlicher zu machen.
Nun, lassen Sie uns mit einigen praktischen Beispielen beginnen!
Hinzufügen von Spalten und Zeilen in einem Data Frame
Hinzufügen von Spalten
Lassen Sie uns mit etwas Einfachem beginnen. Stellen Sie sich vor, Sie haben einen Data Frame mit Informationen über Früchte:
fruits <- data.frame(
name = c("Apple", "Banana", "Cherry"),
color = c("Red", "Yellow", "Red")
)
print(fruits)
Dies gibt aus:
name color
1 Apple Red
2 Banana Yellow
3 Cherry Red
Nun,angenommen, wir möchten eine neue Spalte für den Preis jeder Frucht hinzufügen:
fruits$price <- c(0.5, 0.3, 0.7)
print(fruits)
Und voilà! Wir haben eine neue Spalte hinzugefügt:
name color price
1 Apple Red 0.5
2 Banana Yellow 0.3
3 Cherry Red 0.7
Hinzufügen von Zeilen
Was ist, wenn wir eine neue Frucht zu unserer Liste hinzufügen möchten? Das können wir auch!
new_fruit <- data.frame(name = "Date", color = "Brown", price = 0.6)
fruits <- rbind(fruits, new_fruit)
print(fruits)
Das gibt uns:
name color price
1 Apple Red 0.5
2 Banana Yellow 0.3
3 Cherry Red 0.7
4 Date Brown 0.6
Zusammenführen von Data Frames
Nun stellen wir uns vor, wir haben einen anderen Data Frame mit Nährwertinformationen:
nutrition <- data.frame(
name = c("Apple", "Banana", "Cherry", "Date"),
calories = c(52, 89, 50, 282)
)
# Die beiden Data Frames zusammenführen
fruit_info <- merge(fruits, nutrition, by = "name")
print(fruit_info)
Das gibt uns:
name color price calories
1 Apple Red 0.5 52
2 Banana Yellow 0.3 89
3 Cherry Red 0.7 50
4 Date Brown 0.6 282
Ist das nicht toll? Wir haben Informationen aus zwei verschiedenen Quellen in einen umfassenden Data Frame kombiniert!
Schmelzen und Gießen
Nun tauchen wir in einige fortgeschrittene Umgestaltungstechniken ein. Wir werden das Paket reshape2
dafür verwenden,also stellen Sie sicher, dass Sie es installieren und laden:
install.packages("reshape2")
library(reshape2)
Daten schmelzen
Das Schmelzen von Daten ist wie das Schmelzen eines Eisblocks – alles wird flüssig und kann umgeformt werden. Lassen Sie uns unsere fruit_info
Daten schmelzen:
melted_fruits <- melt(fruit_info, id.vars = "name")
print(melted_fruits)
Das gibt uns:
name variable value
1 Apple color Red
2 Banana color Yellow
3 Cherry color Red
4 Date color Brown
5 Apple price 0.50
6 Banana price 0.30
7 Cherry price 0.70
8 Date price 0.60
9 Apple calories 52.00
10 Banana calories 89.00
11 Cherry calories 50.00
12 Date calories 282.00
Sehen Sie, wie jedes Attribut (Farbe, Preis, Kalorien) in eine separate Zeile umgewandelt wurde? Dies ist für bestimmte Arten von Analysen und Visualisierungen äußerst nützlich.
Geschmolzene Daten gießen
Nun, da wir unsere Daten geschmolzen haben, können wir sie in eine neue Form giessen. Angenommen, wir möchten Früchte als Spalten und Attribute als Zeilen haben:
casted_fruits <- dcast(melted_fruits, variable ~ name)
print(casted_fruits)
Das gibt uns:
variable Apple Banana Cherry Date
1 color Red Yellow Red Brown
2 price 0.50 0.30 0.70 0.60
3 calories 52.00 89.00 50.00 282.00
Beeindruckend, oder? Wir haben unsere Datenstruktur vollständig transformiert!
Fazit
Glückwunsch! Sie haben gerade Ihre ersten Schritte in die Welt der Datenumgestaltung in R unternommen. Erinnern Sie sich daran, dass, wie beim Bau mit Lego, der Schlüssel ist, zu experimentieren und die Struktur zu finden, die am besten für Ihre Bedürfnisse geeignet ist. Haben Sie keine Angst, mit diesen Funktionen herumzuspielen – das ist, wie Sie wirklich lernen werden!
Hier ist eine kurze Referenztabelle der Methoden, die wir behandelt haben:
Methode | Funktion | Zweck |
---|---|---|
Hinzufügen von Spalten |
$ oder cbind()
|
Neue Variablen zu einem Data Frame hinzufügen |
Hinzufügen von Zeilen | rbind() |
Neue Beobachtungen zu einem Data Frame hinzufügen |
Zusammenführen | merge() |
Daten aus verschiedenen Data Frames kombinieren |
Schmelzen | melt() |
Breite Daten in lange Format umwandeln |
Giessen | dcast() |
Lange Daten in breites Format umwandeln |
Üben Sie weiter, und bald werden Sie Daten wie ein Meisterbildhauer umgestalten! Viel Spaß beim Coden!
Credits: Image by storyset