Einführung in PySpark
Benjamin Schmidt
Data Engineer

# Erstelle ein DataFrame aus einer CSV
census_df = spark.read.csv('path/to/census.csv', header=True, inferSchema=True)
# Zeige die ersten 5 Zeilen des DataFrames
census_df.show()
age education.num marital.status occupation income
0 90 9 Widowed ? <=50K
1 82 9 Widowed Exec-managerial <=50K
2 66 10 Widowed ? <=50K
3 54 4 Divorced Machine-op-inspct <=50K
4 41 10 Separated Prof-specialty <=50K
# Zeige das Schema census_df.printSchema()Ausgabe: root |-- age: integer (nullable = true) |-- education.num: integer (nullable = true) |-- marital.status: string (nullable = true) |-- occupation: string (nullable = true) |-- income: string (nullable = true)
# .count() gibt die Gesamtanzahl der Zeilen im DataFrame zurück
row_count = census_df.count()
print(f'Anzahl der Zeilen: {row_count}')
# groupby() ermöglicht SQL-ähnliche Aggregationen
census_df.groupBy('gender').agg({'salary_usd': 'avg'}).show()
Weitere Aggregatfunktionen sind:
sum()min()max().select(): Wählt bestimmte Spalten aus dem DataFrame.filter(): Filtert Zeilen basierend auf Bedingungen.groupBy(): Gruppiert Zeilen nach Spalten.agg(): Wendet Aggregatfunktionen auf gruppierte Daten an# Mit filter und select können wir den DataFrame eingrenzen filtered_census_df = census_df.filter(df['age'] > 50).select('age', 'occupation') filtered_census_df.show()Ausgabe +---+------------------+ |age| occupation | +---+------------------+ | 90| ?| | 82| Exec-managerial| | 66| ?| | 54| Machine-op-inspct| +---+------------------+
Einführung in PySpark