Bevezetés az If nyilatkozatba R

Az R-ben szereplő „if” utasítás egy feltételes utasítás, amelyet egy feltétel (ek) tesztelésére vagy feltétel-alapú kimenet előállítására használnak. Az R-ben szereplő if-állítást több más if-érték követheti, és végül az else-állítás. Szekvenciálisan működik, mint például akkor, ha egy feltétel pozitív teszteket mutat, ha önmagában van, akkor a későbbi ifs és a else utasítás nem fog végrehajtódni. Hasonlóképpen, ha valamelyik másik végrehajtja, akkor az azt követő másikat, ha az utasítások és az egyéb utasítás nem fog végrehajtódni. A másik csak akkor hajtódik végre, ha az előző ha és más esetben ha (ha vannak), negatív teszttel jár a feltétel felett.

Szintaxis

Az if-else állítás szintaxisa az R-ben a következő:

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.
)

Az R-ben szereplő if-else if-else utasítás szintaxisa a következő:

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.
)

Folyamatábra

Itt található az alábbiakban említett folyamatábra

Példák az If nyilatkozatra az R - ben

Annak megértése, hogy az állítás R-ben példák segítségével történik-e

Az R-ben szereplő if állítás különféle helyzetekben használható, és különféle típusú adatokkal működik. Megpróbáljuk megvalósítani annak érdekében, hogy megértsük a működését az alapoktól a legbonyolultabb helyzetekig. Folytassuk ennek megértését részletesebben.

1. példa

Ebben a példában ellenőrizni fogjuk, hogy egy szám osztható-e 21-gyel, vagy sem. Létrehozunk egy olyan funkciót, amely tesztelni fogja ezt a megosztási feltételt az if-else utasítás használatával. Ezután átadjuk a tesztelni kívánt számot a függvénynek.

Az alábbi képernyőkép azt az R funkciót mutatja be, amely beágyazza az if-else funkciót egy szám oszthatósági tesztjének validálására.

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

A fenti kódban a függvénybe átadott számot először az if utasításban szereplő feltételekkel érvényesítjük. Tehát, ha a 21-el osztva a szám nulla marad, akkor az if blokkban lévő kódot kinyomtatják, mivel a kimenet egyébként végrehajtódik.

A fenti függvény különböző számának átadása az alábbiak szerint jár:

2. példa

A második példában az if-else hurkot kiterjesztjük az if-else if-else utasításra. Itt azt szeretnénk ellenőrizni, hogy egy szám osztható-e mind a 7-rel, mind a 9-vel, csak a 7-gyel, de nem-e a 9-vel, csak a 9-vel, de nem a 7-vel, vagy a két szám egyikével sem osztható meg. Ha bármelyik feltétel teljesül, akkor a megfelelő kódblokk végrehajtódik. Lehet, hogy több más, ha kijelentés is van. Mint korábban már említettük, a kimeneti kódblokk csak akkor hajtódik végre, ha egyik feltétel sem teljesül. A megfelelő mondatokban szereplő kimeneti nyilatkozatoknak megfelelően át kell mutatniuk a jelentést.

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.")
)
)

Ha a fenti kóddal definiált függvényben különböző számokat ad át, akkor az alábbi képernyőképen látható kimenetet generál.

Különböző számok átadása a felhasználó által definiált split.function () függvényben () a fenti eredményt adja. Itt négyféle szám lehetséges; egyrészt azok, amelyek oszthatók mind a 7, mind a 9, mint például a 63 és a 126, másodszor, amelyek oszthatók a 7, de nem a 9, mint például a 14 és 35, harmadszor azok, amelyek oszthatók a 9-kel, de nem a 7-rel, mint a 18 és 36, és végül azok, amelyek oszthatók a két egész szám egyikével, azaz a 7-gyel és a 9-gyel. A végsõ feltétel a else állítás részét képezi, mivel az összes többi feltételt ellenõrizzük, az elõzõ if és else if-ban.

3. példa

Ebben a példában megvizsgáljuk, hogy egy szám prímszám-e vagy sem. Bármely számot, amely csak önmagában és egyben osztható el, prímszámnak nevezzük. Meg kell azonban jegyezni, hogy 1 nem prímszám, mivel nem felel meg a szám prímszámának feltételének, mivel 1 esetén mindkét szám, azaz maga és 1 azonos. Továbbá, mi van, ha a felhasználó negatív számot ad át a függvényhez, hogy ellenőrizze, hogy elsődleges-e vagy sem? Tehát a funkció végrehajtása során figyelembe kell venni a fenti feltételeket. Lássuk, hogyan néz ki a funkció a megvalósításkor, az alább látható módon.

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.")
)
)
)

  • A fenti képernyőképe a felhasználó által definiált primecheck.function () függvényt ábrázolja R-ben. Amint látható, a kód a beágyazott if-else funkciót használja a feladat végrehajtásához. Lássuk, hogyan működik a kód. A primecheck.function () függvény csak egy paramétert vesz fel. A jelző változóját kezdetben 1-re állítják. Ezután elindul az if-else if-else szakasz. Az if utasítás ellenőrzi, hogy a szám nullánál nagyobb-e vagy sem. Ez egy nagyon fontos feltétel, és ennek kell lennie az első feltételnek.
  • Ha nem, akkor a függvény generálja a megfelelő üzenetet. Ezután a else-if ellenőrzi, hogy a szám egyenlő-e az 1-gyel, és megmondja a felhasználónak, hogy az 1 nem prímszám; az ok az előző szakaszban található. Ha a fenti két feltétel egyike sem teljesül, akkor a else szakaszban a kódblokk végrehajtódik. Máskülönben most lényegében megpróbáljuk ellenőrizni, hogy a szám elsődleges-e vagy sem a hurok végén.
  • A for hurok osztja a számot 2-ből a mínusz 1 tartományba a növekményes változóval, és ebben a tartományban, ha megoszlik, akkor a zászlót nullára állítják, ami azt jelenti, hogy a szám nem prímszám. A hurokon kívüli if-else nyilatkozat tesztel egy feltételt a zászlón, és megfelelő kimenetet generál.

A funkció működik, és az alábbi képernyőképeken látható eredményeket adja.

Következtetés

Az R programozás során az if-else vagy if-else if-else utasítás használható hatékonyan a feltételhez kapcsolódó szempontok kezelésére. Előfordulhat, hogy az R szkript nem segíti elő az utasítások végrehajtását, mint ahogy más programozási nyelvek kínálnak. Az if-else azonban szépen beágyazható a funkciókba az összes lehetséges eredmény elérése érdekében.

Ajánlott cikkek

Ez egy útmutató az If állításhoz R.-ban. Itt tárgyaljuk az if-else vagy if-else, ha-else állítást, amely hatékonyan használható a feltételhez kapcsolódó szempontok kezelésére. Lehet, hogy megnézi a következő cikkeket is, ha többet szeretne megtudni -

  1. Mi az R programozási nyelv?
  2. R csomagok
  3. R adattípusok
  4. If-else nyilatkozat C
  5. IF-Egyéb nyilatkozat a Matlab-ban

Kategória: