Eğitim/test bölmeleri
Çoğu zaman, bir kestirim modeli çalıştırırken, modeli verinin bir alt kümesi ("training" seti) üzerinde eğitmen gerekir; sonra modelin tahminlerini verinin geri kalanına ("testing" seti) karşı test edersin.
sdf_random_split() veri çerçeveni eğitim ve test setlerine bölmenin bir yolunu sağlar. Kullanımı aşağıdaki gibidir.
a_tibble %>%
sdf_random_split(training = 0.7, testing = 0.3)
Kullanımla ilgili not edilmesi gereken iki nokta var. Birincisi, bölme değerlerinin toplamı bire eşit değilse, öyle olacak şekilde ölçeklendirilirler. Yani training = 0.35 ve testing = 0.15 geçersen, istediğinin iki katını elde edersin. İkincisi, istediğin set adlarını kullanabilir ve veriyi ikiden fazla sete bölebilirsin. Dolayısıyla aşağıdaki de geçerlidir.
a_tibble %>%
sdf_random_split(a = 0.1, b = 0.2, c = 0.3, d = 0.4)
Dönen değer tibble'lardan oluşan bir listedir. Her birine, alıştığın liste indeksleme operatörlerini kullanarak erişebilirsin.
partitioned$a
partitioned[["b"]]
Bu egzersiz, kursun bir parçasıdır
R ile sparklyr kullanarak Spark’a Giriş
Egzersiz talimatları
Senin için spark_conn olarak bir Spark bağlantısı oluşturuldu. Spark'ta depolanan parça (track) üst verisine bağlı bir tibble track_metadata_tbl olarak önceden tanımlandı.
- Parça üst verisini bölmek için
sdf_random_split()kullan.- %70'ini
trainingadlı bir sete koy. - %30'unu
testingadlı bir sete koy.
- %70'ini
- Eğitim tibble'ının
sdf_dim()boyutlarını al. - Test tibble'ının boyutlarını al.
Uygulamalı etkileşimli egzersiz
Bu egzersizi bu örnek kodu tamamlayarak deneyin.
# track_metadata_tbl has been pre-defined
track_metadata_tbl
partitioned <- track_metadata_tbl %>%
# Partition into training and testing sets
___
# Get the dimensions of the training set
___
# Get the dimensions of the testing set
___