IF, ELSE, ELSE IF Prohlášení v R

Obsah:

Anonim

Příkaz if else

Příkaz if-else je skvělý nástroj pro vývojáře, který se pokouší vrátit výstup na základě podmínky. V R je syntaxe:

if (condition) {Expr1} else {Expr2}

Chceme prozkoumat, zda je proměnná uložená jako „množství“ vyšší než 20. Pokud je množství větší než 20, kód vytiskne „Prodali jste hodně!“ jinak dnes nestačí.

# Create vector quantityquantity <- 25# Set the is-else statementif (quantity > 20) {print('You sold a lot!')} else {print('Not enough for today')}

Výstup:

## [1] "You sold a lot!"

Poznámka : Ujistěte se, že jste správně napsali odsazení. Kód s více podmínkami se může stát nečitelným, pokud odsazení není ve správné poloze.

Výrok else if

Úroveň řízení můžeme dále přizpůsobit pomocí příkazu else if. S elif můžete přidat tolik podmínek, kolik chceme. Syntaxe je:

if (condition1) {expr1} else if (condition2) {expr2} else if (condition3) {expr3} else {expr4}

Zajímá nás, jestli jsme prodali množství mezi 20 a 30. Pokud ano, pak pinta Průměrný den. Pokud je množství> 30 tiskneme Jaký skvělý den !, jinak Nestačí pro dnešek.

Můžete zkusit změnit množství množství.

# Create vector quantiyquantity <- 10# Create multiple condition statementif (quantity <20) {print('Not enough for today')} else if (quantity > 20 &quantity <= 30) {print('Average day')} else {print('What a great day!')}

Výstup:

## [1] "Not enough for today"

Příklad 2:

DPH má jinou sazbu podle zakoupeného produktu. Představte si, že máme tři různé druhy produktů s různou DPH:

Kategorie produkty káď
A Kniha, časopis, noviny atd. 8%
B Zelenina, maso, nápoje atd. 10%
C Tričko, jean, kalhoty atd ... 20%

Můžeme napsat řetězec, který použije správnou sazbu DPH na produkt, který si zákazník koupil.

category <- 'A'price <- 10if (category =='A'){cat('A vat rate of 8% is applied.','The total price is',price *1.08)} else if (category =='B'){cat('A vat rate of 10% is applied.','The total price is',price *1.10)} else {cat('A vat rate of 20% is applied.','The total price is',price *1.20)}

Výstup:

# A vat rate of 8% is applied. The total price is 10.8