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

Basitleştirmenin başarısız olması

Etkileşimli kullanım için sapply() harikadır. Çıktı türünü tahmin ederek basitleştirmeye çalışır ve genelde bu iyi çalışır. Ancak, fonksiyon yazarken sapply() güvenli bir seçenek değildir. sapply() çıktını basitleştiremezse, varsayılan olarak lapply() gibi bir liste döndürür. Bu, sen sapply()'nin basitleştirilmiş bir vektör döndüreceğini varsayarak özel fonksiyonlar yazdıysan tehlikeli olabilir ve bu fonksiyonları bozabilir.

2008 borsa çöküşüyle ilgili bilgiler içeren bir liste kullandığımız bir egzersize bakalım.

Bu egzersiz, kursun bir parçasıdır

Finans için Orta Düzey R

Kursa Göz Atın

Egzersiz talimatları

market_crash listesi senin için oluşturuldu.

  • market_crash içindeki her bir öğenin class()'ını almak için sapply() kullan.


Yeni bir liste, market_crash2 oluşturuldu. Fark, tarihin oluşturulma şeklinde!

  • market_crash2 içindeki her bir öğenin class()'ını almak için lapply() kullan.
  • market_crash2 içindeki her bir öğenin class()'ını almak için sapply() kullan.


market_crash2 içindeki date birden fazla sınıfa sahip. sapply() bunu neden basitleştiremedi?

Uygulamalı etkileşimli egzersiz

Bu egzersizi bu örnek kodu tamamlayarak deneyin.

# Market crash with as.Date()
market_crash <- list(dow_jones_drop = 777.68, 
                     date = as.Date("2008-09-28"))
                     
# Find the classes with sapply()
___

# Market crash with as.POSIXct()
market_crash2 <- list(dow_jones_drop = 777.68, 
                      date = as.POSIXct("2008-09-28"))

# Find the classes with lapply()
___

# Find the classes with sapply()
___
Kodu Düzenle ve Çalıştır