Metoderna GroupBy och Filter
Nu när vi vet lite mer om datamängden kan vi titta på några övergripande sammanfattningsmått för ratings-datamängden och se hur många betyg filmerna har fått samt hur många betyg varje användare har gett.
Två vanliga metoder som är användbara när du aggregerar sammanfattningsstatistik i Spark är .filter() och .groupBy(). Med .filter() kan du filtrera bort data som inte uppfyller dina angivna kriterier.
Den här övningen är en del av kursen
Bygg rekommendationsmotorer med PySpark
Övningsinstruktioner
- Importera
colfrånpyspark.sql.functionsoch visaratings-datamängden med.show(). - Använd
.filter()-metoden påratings-datamängden med följande filter inuti parentesen för att bara inkluderauserId-värden som är mindre än 100:col("userId") < 100. - Anropa
.groupBy()-metoden påratings-datamängden för att gruppera data efteruserId. Anropa sedan.count()för att se hur många filmer varjeuserIdhar betygsatt.
Interaktiv övning med praktiskt arbete
Testa den här övningen genom att slutföra den här exempelkoden.
# 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()