If文
CoddyのRジャーニー「基礎」セクションの一部 — レッスン 22/78。
論理式の作成方法を学んだので、それらの条件に基づいてプログラムに実際に何らかの動作をさせる時が来ました。if 文を使うことで、コードに判断を行わせることができます。
if ステートメントは、条件が TRUE の場合にのみコードブロックを実行します:
temperature <- 35
if (temperature > 30) {
print("It's hot outside!")
}Rがif文を検出すると、括弧内の条件を評価します。結果がTRUEであれば、波括弧{}内のコードが実行されます。FALSEの場合、Rはそのブロックを完全にスキップし、プログラムの残りの部分を続行します。
条件として、論理値に評価される任意の式を使用できます。これには、すでに学習した比較演算子や論理演算子も含まれます。
age <- 20
has_id <- TRUE
if (age >= 18 && has_id) {
print("Access granted")
}波括弧内のコードは、両方の条件が満たされた場合にのみ実行されます。age が18未満、または has_id がFALSEのいずれかである場合、何も起こりません。
チャレンジ
簡単if 文を使用して条件をチェックし、その条件が TRUE の場合にのみメッセージを表示してください。
以下の変数が提供されています:
balance <- 250
withdrawal_amount <- 100
is_account_active <- TRUE以下の条件がすべて満たされているかどうかをチェックする if 文を記述してください:
- アカウントがアクティブである(is_account_active)
- 残高(balance)が引き出し額(withdrawal_amount)以上である
両方の条件が TRUE の場合、print() 関数を使用して "Withdrawal approved" というメッセージを表示してください。
条件が満たされない場合、コードは何も出力しないようにしてください。
チートシート
if 文は、条件が TRUE の場合にのみコードブロックを実行します。
if (condition) {
# 条件がTRUEのときに実行するコード
}例:
temperature <- 35
if (temperature > 30) {
print("It's hot outside!")
}条件には比較演算子や論理演算子を使用できます。
age <- 20
has_id <- TRUE
if (age >= 18 && has_id) {
print("Access granted")
}条件が FALSE と評価された場合、コードブロックは完全にスキップされます。
自分で試してみよう
# 提供された変数
balance <- 250
withdrawal_amount <- 100
is_account_active <- TRUE
# TODO: 以下にコードを記述してください
# if文を使用して以下を確認してください:
# 1. アカウントが有効であること
# 2. 残高が引き出し額以上であること
# 両方の条件がTRUEの場合、"Withdrawal approved"と出力してくださいこのレッスンには短いクイズがあります。レッスンを始めて解答し、進捗を記録しましょう。