Die Methoden GroupBy und Filter
Jetzt, da wir ein wenig mehr über den Datensatz wissen, schauen wir uns einige allgemeine Übersichtsmetriken des ratings-Datensatzes an und prüfen, wie viele Bewertungen die Filme haben und wie viele Bewertungen jeweils von den Nutzerinnen und Nutzern abgegeben wurden.
Zwei gängige Methoden, die dir beim Aggregieren von Zusammenfassungsstatistiken in Spark helfen, sind .filter() und .groupBy(). Mit .filter() kannst du alle Daten herausfiltern, die nicht deinen angegebenen Kriterien entsprechen.
Diese Übung ist Teil des Kurses
<Kurs>Recommendation Engines mit PySpark erstellen</Kurs>Übungsanweisungen
- Importiere
colauspyspark.sql.functionsund lass dir denratings-Datensatz mit.show()anzeigen. - Wende die Methode
.filter()auf denratings-Datensatz an und nutze folgenden Filter in den Klammern, um nuruserId-Werte kleiner als 100 einzuschließen:col("userId") < 100. - Rufe die Methode
.groupBy()auf demratings-Datensatz auf, um die Daten nachuserIdzu gruppieren. Rufe anschließend.count()auf, um zu sehen, wie viele Filme jedeuserIdbewertet hat.
Interaktive praktische Übung
Versuche dich an dieser Übung, indem du diesen Beispielcode vervollständigst.
# Import the requisite packages
from pyspark.sql.____ import ____
# View the ratings dataset
____.____()
# Filter to show only userIds less than 100
ratings.____(col("____") < ____).____()
# Group data by userId, count ratings
ratings.____("____").count().show()