Kom igångKom igång gratis

Returnera metadata

Ibland vill du returnera flera saker från en funktion, men resultatet ska ha en viss klass – till exempel en dataram eller en numerisk vektor – och då passar inte en lista. Det här är vanligt när du har ett resultat tillsammans med metadata om resultatet. (Metadata är "data om data". Det kan till exempel vara filen som en datamängd laddades från, användarnamnet på den som skapade variabeln, eller antalet iterationer det tog för en algoritm att konvergera.)

I sådana fall kan du lagra metadata i attribut. Syntaxen för att tilldela attribut ser ut så här.

attr(object, "attribute_name") <- attribute_value

Den här övningen är en del av kursen

Introduktion till att skriva funktioner i R

Visa kurs

Övningsinstruktioner

  • Uppdatera pipeable_plot() så att resultatet har ett attribut med namnet "formula" och värdet av formula.
  • plt_dist_vs_speed, som du skapade tidigare, visas. Undersök dess uppdaterade struktur.

Interaktiv övning med praktiskt arbete

Testa den här övningen genom att slutföra den här exempelkoden.

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
___
Redigera och kör kod