Indholdsfortegnelse:
- Gør scriptet
- For at gøre dette script til en funktion, skal du gøre et par ting. Forestil dig scriptet som en lille fabrik, der tager det rå numeriske materiale og polerer det op til skinnende procentdele, som hver matematiker vil have.
Video: Central Nervous System: Crash Course A&P #11 2025
At gå fra et script til en funktion tager slet ikke meget af. I R er en funktion i det væsentlige et stykke kode, der udføres efter hinanden og uden afbrydelse. På den måde afviger en funktion ikke så meget fra et scriptkørsel ved hjælp af kilden () -funktionen.
Men en funktion har to meget gode fordele i forhold til script:
-
Funktioner kan fungere med variabel input, så du bruger det med forskellige data.
-
Funktioner returnerer output som et objekt, så du kan arbejde med resultatet af den funktion.
Den bedste måde at lære at svømme på er ved at hoppe i den dybe ende, så næste skriver du en funktion for at se, hvor nemt det er i R.
Gør scriptet
Antag, at du vil præsentere fraktionerede tal (for eksempel 1/2) som procentdele, pænt afrundet til en decimal. Sådan opnås det:
-
Multiplicer de brøkdele med 100.
-
Rund resultatet med en decimal.
Du kan bruge funktionen runde () til at gøre dette.
-
Indsæt et procenttegn efter det afrundede nummer.
Funktionen pasta () er til din tjeneste for at opfylde denne opgave.
-
Udskriv resultatet.
Funktionen print () gør dette.
Du kan nemt oversætte disse trin til et lille script til R. Så åben en ny scriptfil i din editor og skriv følgende kode:
x <- c (0, 458, 1. 6653, 0. 83112) procent <- runde (x * 100, cifre = 1) resultat <- pasta (procent, "%" sep = "") print (resultat)
Hvis du gemmer dette script som en scriptfil - f.eks. pastePercent. R - du kan nu kalde dette script i konsollen med følgende kommando: >> kilde ("pastePercent. R") [1] "45. 8% "" 166. 5% "" 83. 1% "
Det virker glimrende, så længe du vil se de samme tre numre hver gang du ringer til scriptet. Men at bruge scriptet til andre data ville være mildt ubelejligt, fordi du skulle ændre scriptet hver gang.
I de fleste redaktører kan du også
kilde et script (send en komplet scriptfil til R-konsollen) med et enkelt klik. I RStudio gøres dette ved at klikke på Source-knappen eller ved at trykke på Ctrl + Shift + S for sourcing uden ekko og Ctrl + Shift + Enter for sourcing med ekko. Omdanne scriptet
For at gøre dette script til en funktion, skal du gøre et par ting. Forestil dig scriptet som en lille fabrik, der tager det rå numeriske materiale og polerer det op til skinnende procentdele, som hver matematiker vil have.
Først skal du bygge fabrikkbygningen, helst med en adresse, så folk vil vide, hvor de skal sende deres tal.Så skal du installere en frontport, så du kan få de rå numre i. Dernæst opretter du produktionslinjen for at omdanne disse tal. Endelig skal du installere en bagport, så du kan sende dine skinnende procentdele til verden.
For at opbygge din fabrik skal du ændre scriptet til følgende kode:
addPercent <- funktion (x) {procent <- runde (x * 100, cifre = 1) resultat <- pasta, sep = "") returnere (resultat)}
Se nærmere på de forskellige dele, der udgør denne lille fabrik. Funktionen har følgende elementer:
Nøgleordet funktion skal altid efterfølges af parenteser. Det fortæller R, at hvad der kommer næste er en funktion.
-
Parametrene efter funktionen udgør frontporten eller
-
argumentliste, af din funktion. Mellem parenteserne gives argumenterne til funktionen. I dette tilfælde er der kun et argument med navnet x. Bøjlerne, {}, kan ses som væggene i din funktion. Alt mellem bøjlerne er en del af samlebåndet, eller
-
kroppen af din funktion. Retur () er den bageste port til din funktion. Objektet, du lægger mellem parenteserne, returneres fra inde i funktionen til dit arbejdsområde. Du kan kun sætte et objekt mellem parenteserne.
-
Hvis du lægger alt sammen sammen, får du en komplet funktion, men R ved ikke, hvor du finder den endnu. Så bruger du tildelingsoperatøren <- for at sætte denne komplette funktion i et objekt med navnet addPercent. Dette er adressen R kan sende tal til til transformation. Nu har funktionen et godt navn og er klar til brug.
Du kan ikke angive i argumentlisten, at x skal være en numerisk vektor. Hvis du for eksempel forsøger at bruge en tegnvektor som en værdi for x, vil multiplikationen inde i kroppen smide en fejl, fordi du ikke kan formere tegn med et tal. Hvis du vil styre hvilken type objekt der gives som et argument, skal du gøre det manuelt i funktionens krop.