Inhoudsopgave:
- De uitvoer van ls () vertelt u dat de functie er is, dus u zou in staat moeten zijn om het te gebruiken. U kunt nu de meest verbazingwekkende percentages maken door de functie addPercent () als volgt te gebruiken: >> nieuw. nummers addPercent (nieuwe. nummers) [1] "82. 2%" "2. 5%" "162%" "40%"
- Nu is ppaste ook een functie die precies hetzelfde doet als addPercent. Merk op dat u in dit geval geen haakjes toevoegt na addPercent.
Video: Scan and Go demo 2024
Als je eenmaal een script hebt gemaakt en getransformeerd in R, sla het script dan op opnieuw en laad het in de console met behulp van de bron () -opdracht die eerder werd weergegeven. Nu zie je … niets. R laat je niet alleen weten dat het de functie heeft geladen, maar het is daar in de werkruimte, zoals je kunt controleren met ls (): >> ls () [1] "addPercent" "percent" "result "" x "
Als u een functie maakt en deze in de werkruimte laadt door het script met de functie op te halen, wordt deze functie een object in de werkruimte en kan dus worden gevonden met ls () en - indien nodig - verwijderd met rm ().
De uitvoer van ls () vertelt u dat de functie er is, dus u zou in staat moeten zijn om het te gebruiken. U kunt nu de meest verbazingwekkende percentages maken door de functie addPercent () als volgt te gebruiken: >> nieuw. nummers addPercent (nieuwe. nummers) [1] "82. 2%" "2. 5%" "162%" "40%"
Eigenlijk zou u de code sprintf ("% 1. 1f %%" kunnen gebruiken, 100 * x) in plaats van de addPercent () -functie voor een zeer vergelijkbaar resultaat. C-coders herkennen sprintf () onmiddellijk en zijn het erover eens dat het zowel ongelofelijk veelzijdig als complex is. De functie wordt geleverd met een zeer lange Help-pagina die zeker de moeite waard is om te lezen als u vaak waarden moet opmaken. Zo niet, bespaar jezelf de hoofdpijn.
Spelen met R-functieobjecten
Omdat een functie in R slechts een ander object is, kunt u het op dezelfde manier manipuleren als wanneer u andere objecten manipuleert. U kunt de functie aan een nieuw object toewijzen en het op deze manier kopiëren: >> ppaste <- addPercentNu is ppaste ook een functie die precies hetzelfde doet als addPercent. Merk op dat u in dit geval geen haakjes toevoegt na addPercent.
Als u de haakjes toevoegt, roept u de functie aan en plaatst u het resultaat van die oproep in ppaste. Als u de haakjes niet toevoegt, verwijst u naar het functieobject zelf zonder het te gebruiken. Dit verschil is belangrijk wanneer u functies als argumenten gebruikt.
U kunt de inhoud van een functie afdrukken door eenvoudigweg de naam ervan bij de prompt te typen, bijvoorbeeld: >> ppaste-functie (x) {procent <- round (x * 100, cijfers = 1) resultaat <- plakken (%, "%", sep = ") return (resultaat)}
Dus de opdracht om te pitten kopieerde eigenlijk de functiecode van addPercent naar een nieuw object.Dat is allemaal cool, maar het betekent ook dat u kan een functie effectief wissen als u per ongeluk dezelfde naam voor een ander object gebruikt.U kunt ook gegevens kwijtraken als u per ongeluk dezelfde naam als uw gegevensobject aan een functie hebt gegeven.Er is geen knop Ongedaan maken in R, dus let op de namen die u gebruikt Kiezen.
Gelukkig doet dit probleem zich niet voor bij de basis R-functies en -functies in pakketten. Hoewel het geen goed idee is, kunt u bijvoorbeeld een vectorsom benoemen en daarna de functie sum () gebruiken. Wanneer u sum () als een functie gebruikt, zoekt R alleen naar functies met die naam en negeert alle andere objecten met dezelfde naam.