Innholdsfortegnelse:
Video: Papa John's NEW Double Cheeseburger Pizza Review 2024
Til tider er det nyttig å bytte mellom mulighetene i R. Den nestede hvis … annet er spesielt nyttig hvis du har komplette kodeblokker som må utføres når en tilstand er oppfylt. Men hvis du trenger å velge verdier basert bare på en tilstand, er det et bedre alternativ: Bruk bryteren () -funksjonen.
Lag valg med bryter
Når du velger valg med bryter, har du en liste over tre mulige valg, og for hvert valg har du en spesifikk mva. Du kan bruke bryteren () -funksjonen som denne:
MVA <- bytte (klient, privat = 1. 12, offentlig = 1. 06, utlandet = 1)
Du konstruerer en bryter () samtale som følger:
-
Gi en single verdi som det første argumentet (i dette tilfellet verdien av klienten).
Merk at bryteren () ikke er vektorisert, slik at den ikke kan håndtere vektorer som et første argument.
-
Etter det første argumentet gir du en liste over valg med respekterte verdier.
Vær oppmerksom på at du ikke trenger å sette anførselstegn rundt valgene.
Husk at bryteren () ikke fungerer på en vektorisert måte. Du kan imidlertid skille mellom valgene lettere, slik at koden blir mer lesbar.
Faktisk må det første argumentet ikke være en verdi; Det kan være noe uttrykk som evaluerer til enten en tegnvektor eller et tall. Hvis du arbeider med tall, trenger du ikke engang å bruke valg = verdi i funksjonssamtalen. Hvis du har heltall, vil bytte () returnere alternativet i den aktuelle posisjonen. I setningen bryteren (2, 'noen verdi', 'noe annet', 'litt mer'), er resultatet 'noe annet'.
Bruk standardverdier i bryteren
Du trenger ikke å spesifisere alle alternativer i en svitsj () samtale. Hvis du vil ha et visst resultat hvis den samsvarende verdien ikke er blant de angitte alternativene, sett det resultatet som det siste alternativet, uten valg.
MVA <- bytte (klient, privat = 1. 12, offentlig = 1. 06, 1)
Du kan enkelt teste dette ut i konsollen ved å opprette et objekt som kalles klient med en bestemt verdi og deretter kjøre bryter (), som i følgende eksempel: >> klientbryter (klient, privat = 1, 12, offentlig = 1, 06, 1) [1] 1
Du kan gi klientens forskjellige verdier for å se hvordan bytt () fungerer.