Introduksjon til If-uttalelse i R

Setningen "if" i R er en betinget setning som brukes til å teste en tilstand (er) eller generere en betingelsesbasert utgang. En if-setning i R kan følges av flere andre ifs, og til slutt av den andre setningen. Det fungerer i rekkefølge, som om en tilstand tester positivt på seg selv, så påfølgende ellers hvis og uttalelsen ellers ikke vil utføres. Tilsvarende, hvis noe annet utføres, vil påfølgende annet hvis uttalelser og uttalelsen ellers ikke kjøres. Det andre vil bare kjøres hvis de foregående hvis og ellers hvis (hvis de er til stede) tester negativt over tilstanden.

syntax

Syntaksen til utsagnet om ellers i R er som følger:

if (condition) (
statement_1 # This statement will execute if the condition is satisfied.
)
else (
statement_2 # This section will execute if the condition is not satisfied.
)

Syntaksen til if-else if-else-setningen i R er som følger:

if (condition_1) (
statement_block_1 # This block will execute if condition 1 is met.
)
else if (condition_2) (
statement_block_2 # This block will execute if condition 2 is met.
)
else (
statement_block_3 # This block will execute if none of the conditions is met.
)

Flytdiagram

Her er flytskjemaet omtalt nedenfor

Eksempler på If-uttalelse i R

Forstå om uttalelse i R gjennom eksempler

If-setningen i R kan brukes i forskjellige situasjoner, og den fungerer med forskjellige typer data. Vi prøver å implementere det for å forstå dets virke fra grunnleggende til mest komplekse situasjoner. La oss fortsette å forstå dette mer detaljert.

Eksempel 1

I dette eksemplet vil vi sjekke om et tall kan deles med 21 eller ikke. Vi oppretter en funksjon som tester denne delingsbetingelsen ved å bruke if-else-setningen. Deretter passerer vi nummeret som skal testes, til funksjonen.

Følgende skjermbilde viser funksjonen i R som bygger inn hvis annet for å validere en delbarhetstest for et nummer.

divide.function <- function(x) (
if (x %% 21 == 0)
(
print(“The number is divisible by 21”)
)
else (
print(“The number is not divisible by 21”)
)
)

I koden over vil først et nummer som er gitt til funksjonen bli validert mot en betingelse i if-setningen. Så hvis tallet når delt 21 returnerer null som resten, vil koden i hvis blokken skrives ut som utdata ellers vil kjøres.

Å gi forskjellige tall i funksjonen ovenfor gir resultater som vist nedenfor:

Eksempel 2

I det andre eksemplet vil vi utvide if-else-løkken til uttalelsen if-else if-else. Her har vi tenkt å sjekke om et tall kan deles med både 7 og 9, bare med 7 men ikke med 9, bare med 9, men ikke med 7, eller med ingen av de to tallene. Hvis noen vilkår er oppfylt, vil den tilsvarende kodeblokken kjøres. Det kan være flere uttalelser om annet. Som nevnt tidligere kjøres kodeblokken i annet bare når ingen betingelser er oppfylt. Utgangsuttalelser i tilsvarende blokker må formidle betydningen korrekt.

divide.function <- function(x) (
if (x %% 7 == 0 && x %% 9 == 0)
(
print("The number is divisible by both 7 and 9.")
)
else if (x %% 7 == 0) (
print("The number is divisible by 7 but not by 9.")
)
else if (x %% 9 == 0) (
print("The number is divisible by 9 but not by 7.")
)
else (
print("The number is divisible neither by 7 nor by 9.")
)
)

Å gi forskjellige tall i funksjonen som er definert ved hjelp av koden ovenfor, genererer output som vist på skjermbildet nedenfor.

Å gi forskjellige tall i den brukerdefinerte funksjonen divide.function () gir resultatet som ovenfor. Her er fire typer tall mulig; for det første de som kan deles med både 7 og 9, som 63 og 126, for det andre de som kan deles med 7, men ikke med 9, slik som 14 og 35, for det tredje de som kan deles med 9, men ikke av 7 som 18 og 36, og til slutt de som er delbare. av ingen av de to heltallene, dvs. 7 og 9. Den endelige betingelsen utgjør delen av annet utsagn som, alle andre mulige forhold blir sjekket, i det foregående hvis og ellers ifs.

Eksempel 3

I dette eksemplet vil vi sjekke om et tall er et primtall eller ikke. Ethvert nummer, som bare kan deles av seg selv og ett, kalles et primtall. Imidlertid må det bemerkes at 1 ikke er et primtall, da det ikke tilfredsstiller betingelsen for at et tall skal være primtall, fordi, når det gjelder 1, er begge tallene, dvs. seg selv og 1 de samme. Videre, hva hvis en bruker gir et negativt tall til funksjonen for å sjekke om det er primt eller ikke? Så alle de ovennevnte forholdene må tas i betraktning mens du implementerer funksjonen. La oss se hvordan funksjonen ser ut når den blir implementert, som vist nedenfor.

primecheck.function <- function(x) (
flag <- 1
if (x <= 0)
(
print("Number must be greater than zero.")
)
else if (x == 1)
(
print("1 is not a prime number.")
)
else
(
for (i in 3:x-1)
(
if (x %% i == 0)
(
flag <- 0
)
)
if (flag == 0)
(
paste(x, "is not a prime number.")
)
else
(
paste(x, "is a prime number.")
)
)
)

  • Skjermbildet over viser den brukerdefinerte funksjonen primecheck.function () i R. Som det fremgår, bruker koden nestet om annet for å utføre oppgaven. La oss se hvordan koden fungerer. Funksjonen primecheck.function () tar bare en parameter. Til å begynne med er flaggvariabelen satt til 1. Deretter begynner om-hvis-hvis-annet-delen. If-setningen sjekker, om antallet er større enn null eller ikke. Dette er en veldig viktig tilstand og må være den første tilstanden.
  • Hvis ikke, genereres den aktuelle meldingen av funksjonen. Deretter sjekker den ellers-hvis tallet er lik 1 og forteller brukeren at 1 ikke er et primtall; årsaken er gitt i foregående avsnitt. Hvis ingen av de to betingelsene ovenfor er oppfylt, kjøres kodeblokken i avsnittet annet. Ellers, nå, prøver vi egentlig å sjekke om tallet er primt eller ikke gjennom for sløyfe.
  • For-loopen deler tallet fra 2 til antall minus 1 område med økningsvariabelen, og i dette området settes flagget til null, noe som betyr at tallet ikke er et primtall. Uttalelsen om ellers utenfor for loop tester en tilstand på flagget og genererer passende utdata.

Funksjonen fungerer og gir resultatene som vist på skjermbildet nedenfor.

Konklusjon

I R-programmering kan uttalelsen if-else eller if-else hvis-annet effektivt brukes til å arbeide med tilstandsrelaterte aspekter. R-skriptet muligens ikke muliggjør implementering av hvis uttalelser på samme måte som andre programmeringsspråk tilbyr. Imidlertid kan hvis-annet være vakkert innebygd i funksjoner for å oppnå alle mulige resultater.

Anbefalte artikler

Dette er en guide til If-uttalelse i R. Her diskuterer vi hvis-ellers eller hvis-ellers hvis-ellers uttalelse effektivt kan brukes til å arbeide med tilstandsrelaterte aspekter. Du kan også se på følgende artikler for å lære mer -

  1. Hva er R-programmeringsspråk?
  2. R-pakker
  3. R Datatyper
  4. Hvis-annet uttalelse i C
  5. IF-Else-uttalelse i Matlab

Kategori: