Video: Brug hjertestarter - sådan bruges en hjertestarter. 2025
Der er flere måder at tilføje argumenter på i R. Funktionen addPercent () runder hver procentdel til en decimal, men du kan tilføje et andet argument for at angive Antallet af cifre den runde () -funktion skal bruge på samme måde som muligt for multargumentet. Hvis du har mange argumenter, videregiver du til andre funktioner inde i kroppen, kan du have en lang liste over argumenter.
R har en genial løsning til dette: prikkerne (…) argumentet. Du kan se prikken argumentet som en ekstra port i din lille funktion. Gennem denne port slipper du yderligere ressourcer (argumenter) straks på det rigtige sted i produktionslinjen (kroppen) uden besværet med at kontrollere alt ved hovedporten.
Du bruger normalt prikken argumentet ved at tilføje det i slutningen af argumentlisten over din egen funktion og i slutningen af argumenterne for den funktion, du vil sende argumenter til.
For at passere ethvert argument til funktionen runde () i kroppen af addPercent, tilpasser du sidstnævntes kode som følger:
addPercent <- funktion (x, mult = 100, …) {procent <- runde (x * mult, …) indsæt (procent, "%", sep = ")}
Nu kan du angive sifferargumentet for funktionen round () i addPercent () opkald som dette:
Du må ikke angive noget argument, hvis funktionen du overfører argumenterne, ikke kræver det. Du kan bruge funktionen addPercent () som før: >>> addPercent (nye numre) [1] "82%" "2%" "162%" "40%"
Bemærk, at resultatet ikke er det samme som det plejede at være. Tallene er afrundet til heltal og ikke til den første decimal.
Hvis du ikke angiver et argument i stedet for prikkene, fungerer funktionen Argumenterne sendes til deres egne standardværdier. Hvis du vil angive forskellige standardværdier, skal du tilføje et specifikt argument til argumentlisten i stedet for at bruge prikkerne.
addPercent <- funktion (x, mult = 100, cifre = 1) {procent <- runde (x * mult, cifre = cifre) indsæt (procent, "%", sep = ")}
Du behøver ikke at give argumentet i argumentlisten det samme navn som argumentet brugt af runde (). Du kan bruge det ønskede navn, så længe du placerer det i den rigtige position i kroppen. Men hvis du kan bruge navne til argumenter, der også bruges af native funktioner inden for R, bliver det lettere for folk at forstå, hvad argumentet gør uden at skulle kigge på kildekoden.
R vil ikke klage, hvis du bruger prikken argumentet i mere end en funktion i kroppen, men før du går over for flere funktioner i kroppen, skal du være sikker på, at dette vandt ' t forårsage problemer R overfører
alle
ekstra argumenter tilhver funktion, og - hvis du er heldig - klager over det deraf følgende rod.