BaşlayınÜcretsiz Başlayın

DataFrame sütunlarını değiştirme

Daha önce, adı andırmayan satırları filtrelemiştin. Şimdi önceki çalışmana dayanarak yöneticin senden iki yeni sütun oluşturmanı istiyor: first_name ve last_name. VOTER_NAME sütununu boşluk karakterlerine göre kelimelere bölmeni istiyor. Son kelimeyi last_name, diğer tüm kelimeleri de first_name olarak ele alacaksın. Bu egzersizde .split(), .size() ve .getItem() dahil bazı yeni fonksiyonlar kullanacaksın. .getItem(index) bir tamsayı alır ve sütundaki ilgili numaralı öğeyi döndürür. .split() ve .size() fonksiyonları pyspark.sql.functions kütüphanesindedir.

Lütfen bu işlemlerin her zaman kullanım durumuna biraz özel olduğunu unutma. Verinin belirli bir formata uyması, çoğu zaman formatın ayrıntılarından daha önemlidir. Veri temizleme görevi nadiren tek bir kişi içindir; tanımlı bir formata uymak, verinin daha sonra daha kolay paylaşılmasını sağlar (ör. Paul isimlerle uğraşmak zorunda kalmaz — Mary veri kümesini çoktan temizlemiştir).

Önceki egzersizinden filtrelenmiş seçmen DataFrame'i voter_df olarak, pyspark.sql.functions kütüphanesi ise F kısaltmasıyla kullanılabilir durumdadır.

Bu egzersiz

PySpark ile Veri Temizleme

kursunun bir parçasıdır
Kursu Görüntüle

Egzersiz talimatları

  • Olası adların listesini tutan splits adlı yeni bir sütun ekle.
  • getItem() metodunu kullanarak first_name adlı yeni bir sütun oluştur.
  • splits listesinin son elemanını al ve last_name adlı bir sütun oluştur.
  • splits sütununu düşür ve yeni voter_df'i göster.

Uygulamalı interaktif egzersiz

Bu örnek kodu tamamlayarak bu egzersizi bitirin.

# Add a new column called splits separated on whitespace
voter_df = voter_df.withColumn(____, F.____(voter_df.VOTER_NAME, '\s+'))

# Create a new column called first_name based on the first item in splits
voter_df = voter_df.withColumn(____, voter_df.splits.getItem(____)

# Get the last entry of the splits list and create a column called last_name
voter_df = voter_df.withColumn(____, voter_df.splits.getItem(F.____('splits') - ____))

# Drop the splits column
voter_df = voter_df.____('splits')

# Show the voter_df DataFrame
voter_df.show()
Kodu Düzenle ve Çalıştır