Datenmanipulation in Python vs. R: dplyr vs. pandas

Vergleich von Datenverarbeitungstechniken in R und Python

Dieses Tutorial vergleicht Datenmanipulationstechniken unter Verwendung der dplyr-Bibliotheken von R und pandas von Python. Lernen Sie anhand von Beispielen, wie Sie Daten filtern, gruppieren, zusammenfassen und verbinden können, um Ihren Data Science Workflow zu optimieren.

Programmierung
Autor:in
Zugehörigkeit
Veröffentlichungsdatum

13. Februar 2024

Geändert

29. April 2025

Schlüsselwörter

dplyr vs pandas, Datenmanipulation in R und Python, pandas-Lernprogramm, dplyr Tutorium, R vs. Python Datenverhauung

Einführung

Effektive Datenmanipulation ist in jedem Data-Science-Workflow unerlässlich. Sowohl R als auch Python bieten leistungsstarke Bibliotheken für diese Aufgabe: dplyr in R und pandas in Python. Obwohl sich die Syntax zwischen den beiden unterscheidet, sind die Kernfunktionen - wie das Filtern, Gruppieren, Zusammenfassen und Verbinden von Daten - bemerkenswert ähnlich. In diesem Tutorial werden Beispiele für gängige Datenmanipulationsoperationen in dplyr und Pandas vorgestellt, damit Sie die Gemeinsamkeiten und Unterschiede beim Übergang zwischen diesen beiden Ökosystemen verstehen.



Daten filtern

Filtern ist eine der grundlegendsten Operationen. Nachfolgend sind Beispiele für das Filtern von Zeilen aufgeführt, in denen die Variable value größer ist als 5.

library(dplyr)

# Erstellen eines Beispieldatenrahmens
data <- data.frame(
  id = 1:10,
  value = c(5, 3, 6, 2, 8, 7, 4, 9, 1, 10)
)

# Zeilen filtern, deren Wert > ist 5
filtered_data <- data %>% filter(value > 5)
print(filtered_data)
  id value
1  3     6
2  5     8
3  6     7
4  8     9
5 10    10
import pandas as pd

# Erstellen eines Beispiel DataFrame
data = pd.DataFrame({
    'id': list(range(1, 11)),
    'value': [5, 3, 6, 2, 8, 7, 4, 9, 1, 10]
})

# Zeilen filtern, deren Wert > ist 5
filtered_data = data[data['value'] > 5]
print(filtered_data)
   id  value
2   3      6
4   5      8
5   6      7
7   8      9
9  10     10

Daten gruppieren und zusammenfassen

Die Gruppierung von Daten und die Berechnung von zusammenfassenden Statistiken ist für das Verständnis von Datenverteilungen von entscheidender Bedeutung. Im Folgenden werden wir nach einer kategorischen Variable gruppieren und den Durchschnitt einer numerischen Variable berechnen.

library(dplyr)

# Erstellen von Beispieldaten mit einer Gruppierungsvariable
data <- data.frame(
  group = rep(c("A", "B"), each = 5),
  value = c(5, 3, 6, 2, 8, 7, 4, 9, 1, 10)
)

# Gruppieren nach 'Gruppe' und Zusammenfassen des Durchschnittswerts
summary_data <- data %>%
  group_by(group) %>%
  summarize(avg_value = mean(value))
print(summary_data)
# A tibble: 2 × 2
  group avg_value
  <chr>     <dbl>
1 A           4.8
2 B           6.2
import pandas as pd

# Erstellen eines DataFrame-Beispiels mit einer Gruppierungsspalte
data = pd.DataFrame({
    'group': ['A']*5 + ['B']*5,
    'value': [5, 3, 6, 2, 8, 7, 4, 9, 1, 10]
})

# Gruppieren nach 'Gruppe' und Berechnen des Mittelwerts von 'Wert'
summary_data = data.groupby('group')['value'].mean().reset_index()
print(summary_data)
  group  value
0     A    4.8
1     B    6.2

Daten verknüpfen

Das Verbinden (Zusammenführen) von Datensätzen ist eine häufige Aufgabe, wenn Daten aus mehreren Quellen kombiniert werden. Nachfolgend ein Beispiel für die Durchführung einer linken Verknüpfung.

library(dplyr)

# Zwei Beispieldatenrahmen erstellen
df1 <- data.frame(
  id = 1:5,
  value1 = c("A", "B", "C", "D", "E")
)

df2 <- data.frame(
  id = c(3, 4, 5, 6),
  value2 = c("X", "Y", "Z", "W")
)

# Linke Verknüpfung df1 mit df2 auf 'id'
joined_data <- left_join(df1, df2, by = "id")
print(joined_data)
  id value1 value2
1  1      A   <NA>
2  2      B   <NA>
3  3      C      X
4  4      D      Y
5  5      E      Z
import pandas as pd

# Erstellen Sie zwei Beispiel-DataFrames
df1 = pd.DataFrame({
    'id': [1, 2, 3, 4, 5],
    'value1': ["A", "B", "C", "D", "E"]
})

df2 = pd.DataFrame({
    'id': [3, 4, 5, 6],
    'value2': ["X", "Y", "Z", "W"]
})

# Eine linke Verknüpfung für 'id' durchführen
joined_data = pd.merge(df1, df2, on="id", how="left")
print(joined_data)
   id value1 value2
0   1      A    NaN
1   2      B    NaN
2   3      C      X
3   4      D      Y
4   5      E      Z

Schlussfolgerung

In diesem Tutorium werden anhand von Beispielen Datenmanipulationstechniken in R mit dplyr und in Python mit pandas miteinander verglichen. Egal, ob Sie Zeilen filtern, Daten für zusammenfassende Statistiken gruppieren oder Datensätze zusammenführen, beide Ökosysteme bieten leistungsstarke und ähnliche Werkzeuge, um Ihre Datenmanipulationsaufgaben zu bewältigen. Das Verständnis dieser Parallelen kann den Übergang zwischen R und Python erheblich erleichtern und Ihnen helfen, das richtige Tool für Ihre Data Science-Projekte zu wählen.

Weiterführende Literatur

Viel Spaß beim Programmieren und bei der Nutzung der Leistungsfähigkeit von dplyr und Pandas in Ihren Data Science Workflows!

Weitere Artikel erkunden

Hinweis

Hier finden Sie weitere Artikel aus derselben Kategorie, die Ihnen helfen, tiefer in das Thema einzutauchen.

placeholder

placeholder
Keine Treffer
Zurück nach oben

Wiederverwendung

Zitat

Mit BibTeX zitieren:
@online{kassambara2024,
  author = {Kassambara, Alboukadel},
  title = {Datenmanipulation in Python vs. R: dplyr vs. pandas},
  date = {2024-02-13},
  url = {https://www.datanovia.com/de/learn/programming/transition/data-manipulation-dplyr-vs-pandas.html},
  langid = {de}
}
Bitte zitieren Sie diese Arbeit als:
Kassambara, Alboukadel. 2024. “Datenmanipulation in Python vs. R: dplyr vs. pandas.” February 13, 2024. https://www.datanovia.com/de/learn/programming/transition/data-manipulation-dplyr-vs-pandas.html.