Onzichtbaar retourneren
Als het hoofddoel van een functie is om output te genereren, zoals een plot tekenen of iets in de console printen, wil je misschien niet ook nog eens een geretourneerde waarde laten printen. In dat geval moet de waarde onzichtbaar geretourneerd worden.
De basisfunctie plot in R retourneert NULL, omdat het hoofddoel is om een plot te tekenen. Dat is niet handig als je het in een pipe wilt gebruiken: in plaats daarvan zou het de plotgegevens onzichtbaar moeten retourneren, zodat ze doorgepiped kunnen worden naar de volgende stap.
Onthoud dat plot() een formule-interface heeft: in plaats van vectoren voor x en y te geven, kun je een formule opgeven die beschrijft welke kolommen van een data frame op de x- en y-as komen, en een data-argument voor het data frame. Let op dat, net als bij lm(), de argumenten in de “verkeerde” volgorde staan, omdat het detailargument formula vóór het data-argument komt.
plot(y ~ x, data = data)
Deze oefening maakt deel uit van de cursus
Introductie tot functies schrijven in R
Praktische interactieve oefening
Probeer deze oefening eens door deze voorbeeldcode in te vullen.
# Using cars, draw a scatter plot of dist vs. speed
plt_dist_vs_speed <- ___(___ ~ ___, data = ___)
# Oh no! The plot object is NULL
plt_dist_vs_speed