R の for ループ

R の for ループ

for ループイン R プログラミング言語 リスト、データ フレーム、ベクトルの要素を反復処理するのに便利です。 マトリックス 、またはその他のオブジェクト。これは、オブジェクト内の要素の数に応じて、for ループを使用してステートメントのグループを繰り返し実行できることを意味します。これはエントリ制御ループです。このループでは、最初にテスト条件がテストされ、次にループ本体が実行されます。テスト条件が false の場合、ループ本体は実行されません。

R 構文の for ループ:

for (var in vector) { statement(s) } 

ここで、var はループ中にベクトルの各値を受け取ります。各反復でステートメントが評価されます。

R の For ループのフローチャート:

RGeeksforgeeks の for ループ

R の for ループ

R の範囲を反復する – For ループ

R




# R Program to demonstrate> # the use of for loop> for> (i> in> 1: 4)> {> > print> (i ^ 2)> }>

出力:

[1] 1 [1] 4 [1] 9 [1] 16 

上の例では、ベクトルである 1 ~ 4 の範囲を反復処理しました。この一般的な for ループにはいくつかのバリエーションが存在します。シーケンス 1:5 を使用する代わりに、連結関数を使用することもできます。

R での concatenate 関数の使用 – For ループ

R




# R Program to demonstrate the use of> # for loop along with concatenate> for> (i> in> c> (-8, 9, 11, 45))> {> > print> (i)> }>

出力:

[1] -8 [1] 9 [1] 11 [1] 45 

ループ内にベクトルを記述する代わりに、事前にベクトルを定義することもできます。

ループ外での concatenate の使用 R – For ループ

R




# R Program to demonstrate the use of> # for loop with vector> x <-> c> (-8, 9, 11, 45)> for> (i> in> x)> {> > print> (i)> }>

出力:

[1] -8 [1] 9 [1] 11 [1] 45 

R の入れ子になった For ループ

R プログラミング言語では、あるループを別のループ内で使用できます。ループのネストでは、任意のタイプのループを他のタイプのループの中に入れることができます。たとえば、for ループを while ループの中に入れることも、その逆にすることもできます。次のセクションでは、概念を説明するための例を示します。

例:

R




# R Program to demonstrate the use of> # nested for loop> for> (i> in> 1:3)> {> > for> (j> in> 1:i)> > {> > print> (i * j)> > }> }>

出力:

[1] 1 [1] 2 [1] 4 [1] 3 [1] 6 [1] 9 

R のジャンプ ステートメント

ループ内でジャンプ ステートメントを使用すると、特定の反復でループを終了したり、ループ内の特定の反復をスキップしたりできます。ループ内で最も一般的に使用される 2 つのジャンプ ステートメントは次のとおりです。

ブレークステートメント:

Break ステートメントは、特定の反復でループを終了するために使用されるジャンプ ステートメントです。その後、プログラムはループの外で次のステートメント (存在する場合) を続行します。

例:

R




# R Program to demonstrate the use of> # break in for loop> for> (i> in> c> (3, 6, 23, 19, 0, 21))> {> > if> (i == 0)> > {> > break> > }> > print> (i)> }> print> (> 'Outside Loop'> )>

出力:

[1] 3 [1] 6 [1] 23 [1] 19 [1] Outside loop 

ここで、ループはゼロに遭遇するとすぐに終了します。

次のステートメント

特定の反復を中止し、次の反復にジャンプします。したがって、next が発生すると、その反復は破棄され、条件が再度チェックされます。 true の場合、次の反復が実行されます。したがって、next ステートメントは、ループ内の特定の反復をスキップするために使用されます。

例:

R




# R Program to demonstrate the use of> # next in for loop> for> (i> in> c> (3, 6, 23, 19, 0, 21))> {> > if> (i == 0)> > {> > next> > }> > print> (i)> }> print> (> 'Outside Loop'> )>

出力:

[1] 3 [1] 6 [1] 23 [1] 19 [1] 21 [1] Outside loop 

R の for ループ内で複数のプロットを作成する

R




# create a matrix of data> mat <-> matrix> (> rnorm> (100), ncol = 5)> # set up the plot layout> par> (mfrow => c> (2, 3))> # loop over columns of the matrix> for> (i> in> 1:5) {> > # create a histogram for each column> > hist> (mat[, i], main => paste> (> 'Column'> , i), xlab => 'Values'> , col => 'lightblue'> )> }>

出力:

RGeeksforgeeks の for ループ

R の for ループ

この例では、 のために ループは行列の列を反復します。 とともに 、各列について、値のヒストグラムが次の方法で作成されます。 ヒスト() 関数。の 主要 の議論 ヒスト() 関数は各プロットのタイトルを設定するために使用されます。 エックスラブ 引数は、X 軸にラベルを付けるために使用されます。の コル 引数は、ヒストグラムのバーの色を水色に設定するために使用されます。

について() 関数はプロットレイアウトを設定するために使用されます mfrow = c(2, 3) これは、プロットを 2 行 3 列に配置することを指定します。これは、 のために ループは 5 つのプロットを作成します。各プロットは行列のいずれかの列のヒストグラムです。 とともに 、2×3のグリッドに配置されます。

ここでは、ゼロに遭遇するとすぐに反復が中止され、条件が再度チェックされます。 21 は 0 に等しくないため、出力されます。上記 2 つのプログラムから結論できるように、2 つのジャンプ ステートメントの基本的な違いは、break ステートメントがループを終了し、next ステートメントがループの特定の反復をスキップすることです。