collectors ile col_types
İçeri aktarılan sütunların türlerini ayarlamanın bir başka yolu da collectors kullanmaktır. Collector fonksiyonları, sütundaki değerlerin nasıl yorumlanacağını belirtmek için read_ fonksiyonlarının col_types argümanına bir list() içinde geçirilebilir.
Collector fonksiyonlarının tam listesi için collector dokümantasyonuna göz atabilirsin. Bu egzersizde iki collector fonksiyonuna ihtiyacın olacak:
col_integer(): sütun tamsayı olarak yorumlanmalıdır.col_factor(levels, ordered = FALSE): sütun,levelsile bir factor olarak yorumlanmalıdır.
Bu egzersizde, ilk satırında sütun adları olmayan ve sekmeyle ayrılmış bir dosya olan hotdogs.txt (view) ile çalışacaksın.
Bu egzersiz
R'de Veri İçe Aktarmaya Giriş
kursunun bir parçasıdırEgzersiz talimatları
hotdogs, sütun türleri ayarlanmadan senin için oluşturuldu.summary()fonksiyonunu kullanarak özetini incele.- Senin için iki collector fonksiyonu tanımlandı:
facveint. Onlara bir bak, neyi topladıklarını (hangi türleri dayattıklarını) anlıyor musun? - İkinci
read_tsv()çağrısında,col_typesargümanını düzenle: İlk sütun factor, ikinci ve üçüncü sütunlar tamsayı olarak içe aktarılsın diyefac,intveintöğelerini içeren birlist()geçir. hotdogs_factoriçin birsummary()oluştur. Bunuhotdogsözetleriyle karşılaştır.
Uygulamalı interaktif egzersiz
Bu örnek kodu tamamlayarak bu egzersizi bitirin.
# Import without col_types
hotdogs <- read_tsv("hotdogs.txt", col_names = c("type", "calories", "sodium"))
# Display the summary of hotdogs
___
# The collectors you will need to import the data
fac <- col_factor(levels = c("Beef", "Meat", "Poultry"))
int <- col_integer()
# Edit the col_types argument to import the data correctly: hotdogs_factor
hotdogs_factor <- read_tsv("hotdogs.txt",
col_names = c("type", "calories", "sodium"),
col_types = NULL)
# Display the summary of hotdogs_factor
___