Daha fazla ayrıştırma
Bu veri kümesini önceki haline göre epey farklı bir formata dönüştürdün, ancak yapılacak birkaç şey daha var. Sütun verilerini sonraki analizlerde kullanılmak üzere hazırlaman ve birkaç ara sütunu kaldırman gerekiyor.
spark bağlamı hazır ve pyspark.sql.functions F olarak kısaltıldı. pyspark.sql.types türleri zaten içe aktarıldı. split_df DataFrame'i bıraktığın yerden devam ediyor. Unutma, sütun adlarını ve türlerini görmek için konsolda bir DataFrame üzerinde .printSchema() kullanabilirsin.
⚠️ Not: Bir AttributeError görürsen, egzersizleri yenile ve Kodu Çalıştır'a tıklamadan Çözümü Çalıştır'a tıkla.
Bu egzersiz
PySpark ile Veri Temizleme
kursunun bir parçasıdırEgzersiz talimatları
retrieveradlı, iki argüman alan yeni bir fonksiyon oluştur: bölünmüş sütunlar (cols) ve toplam sütun sayısı (colcount). Bu fonksiyon, henüz sütun olarak tanımlanmamış girdilerin listesini döndürmeli (yani listedeki 4. öğeden sonraki her şey).- Fonksiyonu, String dizisi döndüren bir Spark UDF olarak tanımla.
- UDF'yi ve DataFrame'deki mevcut sütunları kullanarak
dog_listadlı yeni sütunu oluştur. _c0,colcountvesplit_colssütunlarını kaldır.
Uygulamalı interaktif egzersiz
Bu örnek kodu tamamlayarak bu egzersizi bitirin.
def retriever(____, ____):
# Return a list of dog data
return ____[4:____]
# Define the method as a UDF
udfRetriever = ____(____, ArrayType(____))
# Create a new column using your UDF
split_df = split_df.withColumn('dog_list', ____(____, ____))
# Remove the original column, split_cols, and the colcount
split_df = split_df.drop('____').____('____').____('____')