Hjem Personlig finansiering Sådan bruges Hvis ... Else udsagn i R-dummier

Sådan bruges Hvis ... Else udsagn i R-dummier

Video: Week 0 2024

Video: Week 0 2024
Anonim

Når du bruger R, har du nogle gange brug for din funktion til at gøre noget, hvis en tilstand er sand og noget andet, hvis det er ikke. Du kan gøre dette med to hvis erklæringer, men der er en nemmere måde i R: en hvis … andet erklæring. En hvis … ellers erklæring indeholder de samme elementer som en if-sætning (se foregående afsnit) og derefter nogle ekstra:

  • Nøgleordet ellers placeret efter den første kodeblok

  • En anden kodeblok indeholdt i braces, der skal udføres, hvis og kun hvis resultatet af betingelsen i if () erklæringen er FALSK

I nogle lande er mængden af ​​moms, der skal betales, afhængig af om klienten er en offentlig eller privat organisation. Forestil dig, at offentlige organisationer skal betale kun 6 procent moms og private organisationer skal betale 12 procent moms. Du kan tilføje et ekstra argument offentligt til priceCalculator () func og vedtage det som følger for at tilføje den korrekte moms:

hvis (timer> 100) netto. pris <- netto. pris * 0. 9 hvis (offentlig) {tot. pris <- netto. pris * 1. 06} else {tot. pris <- netto. pris * 1. 12} runde (tot. pris)}

Hvis du sender denne kode til konsollen, kan du teste funktionen. Hvis du for eksempel har arbejdet i 25 timer, giver følgende kode dig de forskellige beløb, du opkræver for offentlige og private organisationer: >> prisberegner (25, offentlig = TRUE) [1] 1060> prisberegner (25, offentlig = FALSE) [1] 1120

Dette virker godt, men hvordan virker det?

Hvis du kigger på hvis … andet erklæring i den foregående funktion, finder du disse elementer. Hvis værdien af ​​argumentet offentlig er SAND, beregnes den samlede pris som 1. 06 gange nettoprisen. Ellers er den samlede pris 1. 12 gange nettoprisen.

Hvis erklæringen har brug for en logisk værdi mellem parenteserne. Ethvert udtryk, du sætter mellem parenteserne, evalueres, inden det videreføres til if-erklæringen. Så hvis du arbejder direkte med en logisk værdi, behøver du ikke at angive et udtryk overhovedet. Hvis du f.eks. Bruger, hvis (offentlig = = TRUE) er overflødig.

Også i tilfælde af en if … sætning kan du tabe bøjlerne, hvis begge kodeblokke eksisterer af kun en enkelt kodekode. Så, man kunne bare glemme armbøjlerne og presse hele, hvis … andet erklæring på en enkelt linje. Eller du kan endda skrive det som:

hvis (offentlig) tot. pris <- netto. pris * 1. 06 ellers tot. pris <- netto. pris * 1. 12

At sætte den anden erklæring i slutningen af ​​en linje og ikke starten på den næste er en god ide.

Generelt læser R flere linjer som en enkelt linje, så længe det er helt klart, at kommandoen endnu ikke er færdig. Hvis du sætter ellers i begyndelsen af ​​anden linje, betragter R den første linje færdig og klager. Du kan kun sætte i begyndelsen af ​​en næste linje, hvis du gør det

inden for en funktion , og du kildes hele filen på en gang til R. Men du kan gøre dette kortere. If-sætningen fungerer som en funktion, og det returnerer derfor også en værdi. Som et resultat kan du tildele denne værdi til en genstand eller bruge den i beregninger. Så i stedet for at beregne netto. pris og tildele resultatet til tot. pris inden for kodeblokkene, kan du bruge det hvis … andet erklæring som dette:

tot. pris <- netto. pris * hvis (offentlig) 1. 06 ellers 1. 12
R vil først evaluere ordet … og multiplicere resultatet efter netto. pris. Resultatet af dette tildeles derefter til tot. pris. Dette adskiller ikke en iota fra resultatet af de fem linjer kode vi brugte til originalen hvis … andet erklæring.
Sådan bruges Hvis ... Else udsagn i R-dummier

Valg af editor

Hvad er Array Formulas i Excel 2013? - dummies

Hvad er Array Formulas i Excel 2013? - dummies

En matrixformel i Excel 2013 (og andre regneark) er en speciel formel, der opererer på en række værdier. Hvis et celleområde leverer dette interval (som det ofte er tilfældet), betegnes det som et arrayinterval. Hvis denne rækkevidde leveres af en liste over numeriske værdier, er de kendt som ...

Ved hjælp af regnearkfunktioner til statistisk analyse i Excel 2016 - dummies

Ved hjælp af regnearkfunktioner til statistisk analyse i Excel 2016 - dummies

Excel 2016b har en række funktioner til Statistisk analyse. Funktionsbiblioteket på fanen Formler viser alle kategorier af Excel-regnearkfunktioner. Trinene i at bruge et regneark funktion er Skriv dine data i et datarray og vælg en celle for resultatet. Vælg den relevante formelskategori og vælg en ...

Hvad er nyt i Excel 2016 til statistisk analyse? - dummies

Hvad er nyt i Excel 2016 til statistisk analyse? - dummies

Microsoft har lavet nogle få ændringer i Excel's Ribbon (fanebåndet øverst), hvilket afspejler ændringer i Excel. Den mest oplagte tilføjelse er pæren øverst til højre for tilføjelser. Det er mærket "Fortæl mig hvad du vil gøre. "Dette kaldes Tell Me-boksen, og det er nyt ...

Valg af editor

Sådan postes på en vens Facebook-tidslinje - dummies

Sådan postes på en vens Facebook-tidslinje - dummies

Dit nyhedsfeed trækker indlæg, som dine Facebook-venner lav på et sted, så du kan læse dem alle på én gang. Men nogle gange vil du læse alt om kun en person. Heldigvis er alle deres indlæg blevet samlet på deres tidslinjer. Tidslinjen er ligesom en nyhedsfeed alt om en person. ...

Sådan sender du en Facebook-begivenhed - dummies

Sådan sender du en Facebook-begivenhed - dummies

Den første måde du sikkert finder ud af om Facebook begivenheden er gennem en anmeldelse. Når en ven inviterer dig til en begivenhed, vises et lille rødt flag over meddelelsesikonet i den store blå bar øverst. Klik på ikonet for at åbne din underretningsmenu; Klik derefter på den invitation, der skal tages ...

Hvordan man kan se de billeder du er på Facebook - dummies

Hvordan man kan se de billeder du er på Facebook - dummies

Hvis du har meget af Facebook venner, du er sandsynligvis i et ton af fotos. Du kan se de billeder, du er i, uden at skulle gå hele Facebook, så længe du er mærket i dem. Måske har du tagget dem selv, eller dine venner har måske tagget dig. Det første sted du ...

Valg af editor

Digital SLR-fotografi Alt-i-One til Dummies Cheat Sheet - dummies

Digital SLR-fotografi Alt-i-One til Dummies Cheat Sheet - dummies

Hvis du 'er interesseret i fotografering, du finder ingen bedre enhed end en digital spejlreflekskamera (eller dSLR). Uanset om du er amatør eller professionel, kan du finde en dSLR, der passer til dine behov. Du kan virkelig ikke slå kombinationen af ​​magt, fleksibilitet, vækstpotentiale og "accessorize-ability" af en dSLR. Med oplysningerne i denne ...

Hvordan man tager gebyr som bryllupsfotograf - dummier

Hvordan man tager gebyr som bryllupsfotograf - dummier

Som bryllupsfotograf, dit job er at hjælpe De formelle portrætter flyder så jævnt som muligt. Du kan lægge meget af grunden i månederne før den faktiske bryllupsdato som du kommunikerer med parret. Hvis du gør dine lektier, kan du fokusere på at holde portræt sessioner organiseret og opretholde kontrol ...