Üstveriyi döndürme
Bazen bir fonksiyondan birden fazla şey döndürmek istersin ama sonucun belirli bir sınıfa (örneğin, bir data frame ya da sayısal bir vektör) sahip olmasını da istersin; bu durumda liste döndürmek uygun olmaz. Bu, sonuçla birlikte sonuca ilişkin üstveri olduğunda yaygındır. (Üstveri, "veri hakkındaki veri"dir. Örneğin, bir veri kümesinin yüklendiği dosya, değişkeni oluşturan kişinin kullanıcı adı ya da bir algoritmanın yakınsaması için gereken yineleme sayısı olabilir.)
Böyle durumlarda, üstveriyi özniteliklerde saklayabilirsin. Öznitelik atamak için sözdizimini hatırla.
attr(object, "attribute_name") <- attribute_value
Bu egzersiz, kursun bir parçasıdır
R'de Fonksiyon Yazmaya Giriş
Egzersiz talimatları
pipeable_plot()fonksiyonunu güncelle ve sonuçta"formula"adlı bir öznitelikformuladeğeriyle yer alsın.- Daha önce oluşturduğun
plt_dist_vs_speedgösterilmiştir. Güncellenmiş yapısını incele.
Uygulamalı etkileşimli egzersiz
Bu egzersizi bu örnek kodu tamamlayarak deneyin.
pipeable_plot <- function(data, formula) {
plot(formula, data)
# Add a "formula" attribute to data
___ <- ___
invisible(data)
}
# From previous exercise
plt_dist_vs_speed <- cars %>%
pipeable_plot(dist ~ speed)
# Examine the structure of the result
___