Padroneggia il ciclo for per semplificare calcoli complessi e altre operazioni ripetitive.

I loop sono una struttura di base nella programmazione che prende un blocco di codice e lo esegue ripetutamente. I cicli For sono uno dei tipi di cicli contenuti in quasi tutte le lingue. Le R per i cicli sono parte integrante dell'analisi dei dati.

Servono a una varietà di scopi, dalla formattazione dell'output all'esecuzione di calcoli su set di dati di grandi dimensioni. L'uso dei cicli for in R semplifica l'esecuzione dell'analisi dei dati.

R's Basic per Loop

Il ciclo for del linguaggio R funziona in modo simile allo standard per i loop trovati in Go e la maggior parte degli altri linguaggi di programmazione. Dato un punto di partenza, eseguirà il codice in esso contenuto un determinato numero di volte.

Un contatore contiene l'iterazione in cui si trova attualmente il ciclo ed è possibile accedervi dal blocco di codice associato. I cicli possono essere eseguiti per un numero fisso di iterazioni o per la lunghezza totale di un array, vettore o elenco.

instagram viewer

Risolti i cicli di iterazione

I cicli di iterazione fissi in R assumono la seguente forma:

per (X In1:10) {
stampa (x)
}

La x nel ciclo è la variabile che memorizzerà l'iterazione del ciclo.

Dopo la parola chiave "in" ci sono i punti iniziale e finale del ciclo. Il ciclo inizierà il suo iteratore dal primo numero.

Dopo ogni esecuzione del codice nel ciclo, verificherà se l'iteratore è uguale al numero dopo i due punti.

Se lo è, l'esecuzione del codice continuerà dopo il ciclo. In caso contrario, l'iteratore aumenterà di 1 e il blocco di codice tra parentesi verrà eseguito di nuovo.

For Loop su matrici, elenchi e vettori

Proprio come scorrere un dizionario in Python, è possibile eseguire iterazioni su strutture di dati appropriate in R utilizzando il ciclo for. È possibile utilizzare qualsiasi struttura dati iterabile dopo la parola chiave "in", al posto di un punto iniziale e finale fisso.

Il looping in questo modo cambierà il comportamento del codice. Qui, il ciclo funzionerà come un ciclo foreach da linguaggi come C#:

dipendenti "Ben", "Jane", "Suzzi", "Josh", "Carola")

per (X In dipendenti) {
stampa (x)
}

Ora, invece di x contenere l'iterazione corrente del ciclo, manterrà l'oggetto dall'array o dall'elenco su cui si trova attualmente il ciclo. Al termine di ogni ciclo, se sono presenti più elementi nell'elenco, nell'array o nel vettore, x verrà impostato sull'elemento successivo. Se non ci sono più elementi, l'esecuzione continuerà con il codice dopo il ciclo.

La funzione primitiva c ei cicli for

Oltre alle strutture dati già popolate, R può comporne una nuova nella dichiarazione del ciclo for. Per fare ciò, usa la funzione c per combinare più elementi in un nuovo vettore.

Puoi semplificare l'esempio sopra usando questo metodo:

per (X In C("Ben", "Jane", "Suzzi", "Josh", "Carola")) {
stampa (x)
}

Si noti che l'output è lo stesso di prima:

Dichiarazioni Jump di R

Due istruzioni consentono di saltare le iterazioni del ciclo: break e next. Lo fanno in modi diversi. Dovresti assicurarti di conoscere la differenza tra i due.

La parola chiave di rottura

Quando un ciclo incontra un'istruzione break al suo interno, chiude immediatamente il ciclo. Poiché il programma esce dal ciclo una volta raggiunta la parola chiave break, non eseguirà più il codice rimanente:

giorni "Lunedi", "Martedì", "Mercoledì", "Giovedì", "Venerdì", "Sabato",
"Domenica")

per (X In giorni) {
Se (x== "Sabato") {
rottura
}

stampa (x)
}

Il ciclo precedente stamperà tutti i giorni della settimana, ma nessuno dei giorni del fine settimana.

La prossima parola chiave

Anche la parola chiave next salta un'iterazione, ma a differenza di break, next non chiude immediatamente il ciclo. Il ciclo che rimane aperto significa che qualsiasi codice aggiuntivo all'interno del ciclo corrente non verrà eseguito, ma la successiva iterazione continuerà come previsto:

giorni "Lunedi", "Martedì", "Mercoledì", "Giovedì", "Venerdì", "Sabato",
"Domenica")

per (X In giorni) {
Se (x== "Sabato") {
Prossimo
}

stampa (x)
}

Questo ciclo verrà visualizzato ogni giorno della settimana e domenica, ma non verrà stampato il sabato.

Esempio per Loop in R

Ci sono un'ampia varietà di situazioni in cui i cicli for sono utili in R. Possono essere un ottimo modo per eseguire calcoli ripetitivi, come l'aggiunta di numeri per ottenere un totale:

ordini 23.4, 699.8, 1042.0)
totale 0.0

per (ordine In ordini) {
totale }

gatto("il totale è $", totale, "\N")

Questo esempio aggiungerà un totale dell'ordine da ogni singolo ordine in un elenco al totale complessivo.

In alternativa, un ciclo for può aiutarti a produrre rapidamente e facilmente grandi quantità di dati ben formattati:

giorni_totali 567.82, 364.72, 762.81, 354.99, 622.87)

per (giorno In1:lunghezza (giorni_totali)) {
gatto("Giorno #", giorno, ": $", day_totals[giorno],"\N")
giorno 1
}

Puoi utilizzare un ciclo for per stampare ogni giorno della settimana e le vendite totali per quel particolare giorno.

È possibile utilizzare un ciclo for per calcolare i risultati e renderli disponibili per il codice al di fuori del ciclo for, per ottenere una varietà di informazioni:

test_scores 67, 89, 72, 44)
punteggio_totale 0
num_test 0

per (punto In test_scores) {
score_total num_test 1
}

punteggio_medio stampa (punteggio_medio)

Il ciclo precedente calcolerà il punteggio medio ottenuto dagli studenti in un test.

Tutto quello che c'è da sapere sulle R per i loop

Imparare a eseguire un determinato numero di loop o iterare su un set di dati senza una lunghezza fissa è essenziale.

Sia che tu debba eseguire calcoli ripetuti su un array, stampare ogni elemento in un elenco o mostrare una grande quantità di dati in una forma leggibile, il ciclo R for può aiutarti.

Comprendere i principi alla base dei cicli for è un'abilità preziosa da avere nel tuo arsenale e padroneggiarla può aiutarti a scrivere codice semplice e di facile lettura.