Für Schleife in R - Wie funktioniert For Loop in R zusammen mit Beispielen und Syntax?

Inhaltsverzeichnis:

Anonim

Einführung in For Loop

Eine For-Loop-Bedingung wird ausgeführt, damit sich ein Satz wiederholen kann, bis die erforderliche Bedingung erreicht ist. For-Schleifen sind sehr nützlich, wenn ein großer Bereich von Elementen oder ganzen Zahlen iteriert werden muss. Die For-Schleife kann über einen Datenrahmen, einen Vektor oder ein beliebiges Objekt verwendet werden. In einer Situation, in der eine ähnliche Funktion wiederholt ausgeführt werden muss, wird for loop verwendet, um Aufwand und Zeit zu reduzieren. Wenn beispielsweise 100 Zufallszahlen von 1 bis 1000 gedruckt werden sollen, können wir die for-Schleifenbedingung verwenden, um dies auf einfache Weise zu erreichen, ohne die print-Anweisung 100-mal verwenden zu müssen. In diesem Thema lernen wir For Loop in R kennen.

Für die Schleifensyntax

Die for-Schleifensyntax in R ähnelt der von Python oder einer anderen Sprache. Unten ist die Syntax der for-Schleife in R.

Syntax:

for (val in sequence) (
Statement
)

In der obigen Syntax wird der Vektor durch eine Sequenz dargestellt und val ist der Wert des Vektors während der For-Schleife.

Lassen Sie uns nun den von for loop condition durchgeführten Prozess mit Hilfe des Flussdiagramms betrachten. Für jedes Element in der Sequenz wiederholt sich die Schleife, bis die erforderliche Bedingung erreicht ist. Die Bedingung wird geprüft und wenn der letzte Eintrag erreicht ist, existiert die Schleife.

Die Struktur besteht aus einer Initialisierung, die als "init" angezeigt wird, der Raute, die eine Entscheidungsbox ist, und einer rechteckigen Box, die den Körper der for-Schleife darstellt. Während der Ausführung einer Reihe von Befehlen unter der Bedingung for loop startet der Compiler die Schleife erst, wenn die Bedingung angegeben ist. Wenn keine Bedingung verfügbar ist, wird der nächste Befehl nach der Schleife ausgeführt. Für jedes Element in der Sequenz wird die Bedingung abgeglichen. Solange die Bedingung nicht erfüllt ist, wird die Schleife immer wieder wiederholt. Sobald das letzte Element oder die Bedingung erfüllt ist, ist der Compiler in der Schleife vorhanden.

Wie funktioniert For Loop in R?

Bevor wir lernen, wie For Loop in R funktioniert, wollen wir uns ansehen, was eine Schleife oder ein Loop ist. Schleife oder Iteration, bei der es sich im Grunde um eine zu wiederholende Anweisung handelt, hat ihren Ursprung lange zurück. In einfachen Worten, es automatisiert den Prozess, indem bestimmte erforderliche Funktionen in einem Stapel von Teilen zusammengefasst werden. Die meisten modernen Programmiersprachen verfügen über eine integrierte Schleifenfunktion, mit der eine Funktion für die Automatisierung erstellt werden kann. Die Schleifenfunktionen können in zwei Teile unterteilt werden, Schleifen, die gesteuert werden und so oft ausgeführt werden können, wie es für die Schleifenfamilie gewünscht ist. Andererseits fallen die Schleifen, die auf einer Reihe von Bedingungen basieren, unter die while-Schleifenfamilie.

In diesem Artikel werden die verschiedenen in R verfügbaren Methoden zum Schleifen untersucht. Wir werden uns weitere Beispiele für Schleifen mit Funktionen ansehen, die in der R-Bibliothek verfügbar sind. Während Sie in R-Sprache arbeiten For-Schleifen sind nur Schleifenbedingungen, die Sie benötigen. In seltenen Fällen sind andere Schleifenbedingungen wie while erforderlich. Wir werden sehen, wie die For-Schleife verwendet wird, um numerische Werte zu durchlaufen.

# for printing number from 9 to 99 usinf for loop
> for(i in 9:99)(
+ print(i)
+ )
(1) 9
(1) 10
(1) 11
(1) 12
(1) 13
(1) 14
(1) 15
(1) 16
(1) 17
(1) 18
(1) 19
(1) 20
(1) 21

Im obigen Beispiel wird die Variable "i" von der Schleife genommen und iteriert, bis die Bedingung erfüllt ist. Wenn Sie die Variable "i" innerhalb der Schleife drucken, erhalten Sie Werte zwischen 9 und 99. Schauen wir uns nun ein weiteres Beispiel mit Zeichen an.

# for printing and looping items in example vector
> example <- c("cat", "dog", "bill", "base")
> for(i in 1:4)
+ (
+
+ print(example(i))
+ )
(1) "cat"
(1) "dog"
(1) "bill"
(1) "base"
# In case we don't want the entire loop to be executed
# loop can be stopped with the help of break condition
# In the below example the fourth element will not be printed.
> example <- c("cat", "dog", "bill", "base")
> for(i in 1:3)
+ (
+
+ print(example(i))
+ )
(1) "cat"
(1) "dog"
(1) "bill"

Im obigen Beispiel werden die gewünschten Elemente aus dem Beispiel ausgedruckt. Im ersten Beispiel werden vier Elemente in der Sequenz aufgerufen, daher wurden alle Elemente gedruckt, wenn die print-Anweisung ausgeführt wurde. Im zweiten Beispiel wurde die Sequenz bis zum dritten Element aufgerufen, daher werden die ersten drei Elemente gedruckt.

Andererseits gibt es eine Bedingung, die Wiederholungsschleife genannt wird und eine ähnliche Funktionalität wie die Schleife hat. Die Wiederholungsbedingung wird jedoch verwendet, um den Code ohne Bedingungsprüfung fortlaufend zu durchlaufen.

Der Benutzer muss eine Bedingung innerhalb der Schleife definieren und eine "break" -Anweisung verwenden, um die Schleife zu verlassen. Wenn Sie die break-Anweisung nicht verwenden, wird eine Endlosschleife ausgelöst.

# illustrating repeat statement to print numbers from 5 to 15
> n <- 5
> repeat
+ (
+ print(n)
+ n = n+1
+ if (n == 16)(
+ break
+ )
+ )
(1) 5
(1) 6
(1) 7
(1) 8
(1) 9
(1) 10
(1) 11
(1) 12
(1) 13
(1) 14
(1) 15

Im obigen Beispiel haben wir die Bedingung n == 16 angegeben, damit der Compiler die Schleife stoppt, wenn n == 6 erreicht ist.

Für Schleifenbeispiele

Um For-Schleifen in R einzuführen, nehmen wir ein Beispiel für das Extrahieren von Elementen oder Elementen aus dem Vektor.

> states <- c('Oregon', 'Florida', 'Texas', 'Lowa', 'Nebraska', 'utah')
>
>
> for (str in states) (
+ print(paste("States in USA: ", str))
+ )
(1) "States in USA: Oregon"
(1) "States in USA: Florida"
(1) "States in USA: Texas"
(1) "States in USA: Lowa"
(1) "States in USA: Nebraska"
(1) "States in USA: utah"
# to illustrate the print operation outside the loop
> print("----prints outside the loop---")
(1) "----prints outside the loop---"

Schritt 1

Es wurden vektornamierte Zustände definiert, die aus verschiedenen Zuständen bestehen

> states <- c('Oregon', 'Florida', 'Texas', 'Lowa', 'Nebraska', 'Utah')

Schritt 2

Im nächsten Schritt wird die for-Schleife verwendet, um den Zustandsvektor zu durchlaufen und den individuellen Namen der Zustände anzuzeigen.

> for (str in states) (
+ print(paste("States in USA: ", str))
+ )

Da die print-Anweisung in der Schleife enthalten ist, erhalten wir die gewünschten Ergebnisse und alle Namen der Status werden gedruckt. Im nächsten Schritt wird eine andere print-Anweisung außerhalb der Schleife verwendet, die praktisch ausgeführt wird, sobald die for-Schleife endet.

Lassen Sie uns nun die Logik hinter jeder Iteration während der Ausführung des Codes sehen.

  1. Während der ersten Iteration, State = Oregon, verbleiben Elemente im Vektor. Daher wird die print-Anweisung vom Compiler innerhalb der Schleife ausgeführt.
  2. Während der zweiten Iteration, State = Florida, verbleiben vier weitere Elemente im Vektor. Daher wird die print-Anweisung vom Compiler innerhalb der Schleife ausgeführt.
  3. Während der dritten Iteration, State = Texas, verbleiben drei weitere Elemente im Vektor. Daher wird die print-Anweisung vom Compiler innerhalb der Schleife ausgeführt.
  4. Während der vierten Iteration, State = Lowa, verbleiben zwei weitere Elemente im Vektor. Daher wird die print-Anweisung vom Compiler innerhalb der Schleife ausgeführt.
  5. Während der fünften Iteration, State = Nebraska, verbleibt ein weiteres Element im Vektor. Daher wird die print-Anweisung vom Compiler innerhalb der Schleife ausgeführt.
  6. Während der sechsten Iteration, State = Utah, können noch Elemente im Vektor vorhanden sein. Daher wird die print-Anweisung vom Compiler innerhalb der Schleife ausgeführt.
  7. Während der siebten Iteration verlässt der Compiler die Schleife, da für die Statusvariable keine Elemente mehr zugewiesen werden müssen.

Im nächsten Beispiel sehen wir uns die Schleifenfunktionalität für Ganzzahlen an.

> num <- c(1:5)
>
> for (i in num) (
+ print(i)
+ )
(1) 1
(1) 2
(1) 3
(1) 4
(1) 5

Schritt 1

Es wurde der Vektor num definiert, der aus ganzen Zahlen von 1 bis 5 besteht

> num <- c(1:5)

Schritt 2

Im nächsten Schritt wird die for-Schleife verwendet, um den num-Vektor zu durchlaufen und die einzelnen Ganzzahlen anzuzeigen.

> for (i in num) (
+ print(i)
+ )

Da die print-Anweisung in der Schleife enthalten ist, erhalten wir die gewünschten Ergebnisse und alle Ganzzahlen aus der Vektornummer werden gedruckt.

Lassen Sie uns nun die Logik hinter jeder Iteration während der Ausführung des Codes sehen.

  1. Während der ersten Iteration, "1", verbleiben Elemente im Vektor. Daher wird die print-Anweisung vom Compiler innerhalb der Schleife ausgeführt.
  2. Während der zweiten Iteration, "2", verbleiben drei weitere Elemente im Vektor. Daher wird die print-Anweisung vom Compiler innerhalb der Schleife ausgeführt.
  3. Während der dritten Iteration, "3", verbleiben zwei weitere Elemente im Vektor. Daher wird die print-Anweisung vom Compiler innerhalb der Schleife ausgeführt.
  4. Während der vierten Iteration, "4", verbleibt noch ein Element im Vektor. Daher wird die print-Anweisung vom Compiler innerhalb der Schleife ausgeführt.
  5. Während der fünften Iteration "5" können Elemente im Vektor verbleiben. Daher wird die print-Anweisung vom Compiler innerhalb der Schleife ausgeführt.
  6. Während der sechsten Iteration verlässt der Compiler die Schleife, da für die Variable num keine Elemente mehr zuzuweisen sind.

Fazit - Für Loop in R

In diesem Artikel haben wir gesehen, wie die For-Loop-Bedingung mit R ausgeführt werden kann. R Studio wurde verwendet, um die obigen Vorgänge auszuführen, und die Ergebnisse wurden angezeigt. Wir haben weiterhin ein Beispiel für das Extrahieren von Elementen oder Elementen aus dem Vektor gesehen, und die Bewertung für jeden Schritt wurde in dem Artikel untersucht.

Empfohlene Artikel

Dies ist eine Anleitung zu For Loop in R. Hier wird die Funktionsweise von for loop in R anhand der entsprechenden Beispiele und der Syntax erläutert. Sie können sich auch die folgenden Artikel ansehen, um mehr zu erfahren -

  1. Für Schleife in Python
  2. C # For-Schleife
  3. Schleifen in der Java-Programmierung
  4. Schleifen in R
  5. Für Loop in C