Scopri nel dettaglio la funzione ifelse(), inclusa la sintassi, come verificare se un numero è pari o dispari e, infine, un esempio per vedere se uno studente ha superato o fallito l'esame.
La funzione "ifelse()" è l'alternativa e la forma abbreviata dell'istruzione if-else in R. Inoltre, utilizza la tecnica "vettorializzata", che rende l'operazione più veloce. Tutti i valori del vettore vengono passati come argomento in una volta sola, invece di passare più volte singoli valori come argomento.
Sintassi
La sintassi della funzione "ifelse()" in R è la seguente: ifelse(logical_expression, a , b)
Gli argomenti di "ifelse" indicano che: 1. logical_expression: Indica un vettore di input, che a sua volta restituirà in output un vettore della stessa dimensione. 2. a: Viene eseguito quando logical_expression è TRUE. 3. b: Viene eseguito quando logical_expression è FALSE.
Esempio (Dispari o Pari)
Vediamo rapidamente un esempio in cui il seguente codice verifica se i numeri sono dispari o pari. "v" è il vettore che contiene un elenco di numeri. Nella funzione "ifelse" l'espressione "v%%2==1" controlla che il resto di ciascun numero in "v" sia uno e, se risulta TRUE, stampa "odd" altrimenti, se è FALSE, stampa "even".
v = c(14,7,6,9,2)
ifelse(v %%2==1,"odd","even")Offerto da
'even'
'odd'
'even'
'odd'
'even'
Il codice sopra fornisce il seguente output: 'even' 'odd' 'even' 'odd' 'even' Il funzionamento interno del codice produce un vettore logico c(FALSE,TRUE,FALSE,TRUE,FALSE). Il primo parametro formerà un vettore di stringhe c("odd","odd","odd","odd","odd"); anche il secondo parametro, a sua volta, produrrà un vettore di stringhe c("even","even","even","even","even"). Infine, quando i singoli elementi del vettore sono TRUE vengono cambiati in 'odd', mentre i 'FALSE' diventano 'even'.
Esempio (Promosso o Bocciato)
L'esempio seguente mostra l'uso della funzione "ifelse()" insieme a un DataFrame. Se uno studente ottiene un punteggio superiore a 40, allora viene considerato "Pass" (promosso), altrimenti viene considerato "Fail" (bocciato) a un esame.
Creiamo rapidamente un Data Frame in cui c'è una colonna con il nome dello studente, "Student", con come input un vettore contenente ("Ron", "Jake", "Ava", "Sophia", "Mia"). Un'altra colonna è "Marks", che contiene come input un vettore con i valori (35,75,45,30,85). Infine, entrambe le colonne vengono combinate per formare un data frame e salvate in 'x'.
x <- data.frame("Student"= c("Ron","Jake","Ava","Sophia","Mia"),"Marks"= c(35,75,45,30,85))
str(x)Offerto da
'data.frame':5 obs. of 2 variables:$ Student: Factor w/5 levels "Ava","Jake","Mia",..:42153$ Marks : num 3575453085Offerto da
'data.frame':5 obs. of 2 variables:$ Student: Factor w/5 levels "Ava","Jake","Mia",..:42153$ Marks : num 3575453085Offerto da
Il codice sopra mostra la struttura di un Data Frame usando "str(x)", che indica che ci sono 5 osservazioni con 2 variabili e riporta i rispettivi valori di Student e Marks.
x$Result = ifelse(x$"Marks">40,"Pass","Fail")
print(x)Offerto da
Il codice sopra restituisce il seguente output:
Student Marks Result
1 Ron 35 Fail
2 Jake 75 Pass
3 Ava 45 Pass
4 Sophia 30 Fail
5 Mia 85 Pass Offerto da
Nel codice sopra, 'x$Result' come variabile viene usato per aggiungere una nuova colonna "Result" a un Data Frame. La funzione "ifelse()" ha come espressione 'x$"Marks">40', che controlla i valori del vettore dalla colonna Marks e determina che "Result" sia "Pass" quando Marks è maggiore di 40, altrimenti "Result" è "Fail".
Congratulazioni
Congratulazioni, sei arrivato alla fine di questo tutorial!
Hai imparato la funzione ifelse() di R con la sua sintassi, come aiuta a capire se un numero è dispari o pari e, infine, con un esempio per vedere se uno studente è promosso o bocciato a un esame.
Se vuoi saperne di più su R, puoi trovare tutte le nostre risorse su R qui.
Scopri i 15 migliori server MCP remoti che stanno trasformando lo sviluppo AI nel 2026. Scopri come migliorano automazione, ragionamento, sicurezza e velocità dei workflow.
La funzione "ifelse()" è l'alternativa e la forma abbreviata dell'istruzione if-else in R. Inoltre, utilizza la tecnica "vettorializzata", che rende l'operazione più veloce. Tutti i valori del vettore vengono passati come argomento in una volta sola, invece di passare più volte singoli valori come argomento.
Sintassi
La sintassi della funzione "ifelse()" in R è la seguente:
ifelse(logical_expression, a , b)
Gli argomenti di "ifelse" indicano che:
1. logical_expression: Indica un vettore di input, che a sua volta restituirà in output un vettore della stessa dimensione.
2. a: Viene eseguito quando logical_expression è TRUE.
3. b: Viene eseguito quando logical_expression è FALSE.
Esempio (Dispari o Pari)
Vediamo rapidamente un esempio in cui il seguente codice verifica se i numeri sono dispari o pari. "v" è il vettore che contiene un elenco di numeri. Nella funzione "ifelse" l'espressione "v%%2==1" controlla che il resto di ciascun numero in "v" sia uno e, se risulta TRUE, stampa "odd" altrimenti, se è FALSE, stampa "even".
Il codice sopra fornisce il seguente output:
'even' 'odd' 'even' 'odd' 'even'
Il funzionamento interno del codice produce un vettore logico c(FALSE,TRUE,FALSE,TRUE,FALSE). Il primo parametro formerà un vettore di stringhe c("odd","odd","odd","odd","odd"); anche il secondo parametro, a sua volta, produrrà un vettore di stringhe c("even","even","even","even","even"). Infine, quando i singoli elementi del vettore sono TRUE vengono cambiati in 'odd', mentre i 'FALSE' diventano 'even'.
Esempio (Promosso o Bocciato)
L'esempio seguente mostra l'uso della funzione "ifelse()" insieme a un DataFrame. Se uno studente ottiene un punteggio superiore a 40, allora viene considerato "Pass" (promosso), altrimenti viene considerato "Fail" (bocciato) a un esame.
Creiamo rapidamente un Data Frame in cui c'è una colonna con il nome dello studente, "Student", con come input un vettore contenente ("Ron", "Jake", "Ava", "Sophia", "Mia"). Un'altra colonna è "Marks", che contiene come input un vettore con i valori (35,75,45,30,85). Infine, entrambe le colonne vengono combinate per formare un data frame e salvate in 'x'.
Il codice sopra mostra la struttura di un Data Frame usando "str(x)", che indica che ci sono 5 osservazioni con 2 variabili e riporta i rispettivi valori di Student e Marks.
Il codice sopra restituisce il seguente output:
Nel codice sopra,
'x$Result'come variabile viene usato per aggiungere una nuova colonna "Result" a un Data Frame. La funzione "ifelse()" ha come espressione'x$"Marks">40', che controlla i valori del vettore dalla colonna Marks e determina che "Result" sia "Pass" quando Marks è maggiore di 40, altrimenti "Result" è "Fail".Congratulazioni
Congratulazioni, sei arrivato alla fine di questo tutorial!
Hai imparato la funzione ifelse() di R con la sua sintassi, come aiuta a capire se un numero è dispari o pari e, infine, con un esempio per vedere se uno studente è promosso o bocciato a un esame.
Se vuoi saperne di più su R, puoi trovare tutte le nostre risorse su R qui.
Dai un'occhiata al nostro tutorial Uso delle funzioni in R.