ComeçarComece de graça

Retornando metadados

Às vezes você quer retornar várias coisas de uma função, mas também quer que o resultado tenha uma classe específica (por exemplo, um data frame ou um vetor numérico), então retornar uma lista não é apropriado. Isso é comum quando você tem um resultado mais metadados sobre esse resultado. (Metadados são “dados sobre os dados”. Por exemplo, pode ser o arquivo de onde um conjunto de dados foi carregado, o nome de usuário de quem criou a variável ou o número de iterações para um algoritmo convergir.)

Nesse caso, você pode armazenar os metadados em atributos. Lembre-se de que a sintaxe para atribuir atributos é a seguinte.

attr(object, "attribute_name") <- attribute_value

Este exercício faz parte do curso

Introdução à Escrita de Funções em R

Ver curso

Instruções do exercício

  • Atualize pipeable_plot() para que o resultado tenha um atributo chamado "formula" com o valor de formula.
  • plt_dist_vs_speed, que você criou anteriormente, é exibido. Examine sua estrutura atualizada.

Exercício interativo prático

Experimente este exercício completando este código de exemplo.

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
___
Editar e executar o código