R: come utilizzare la funzione lapply() con più argomenti
La funzione lapply() in R può essere utilizzata per applicare una funzione a ciascun elemento di una lista, vettore o frame di dati e ottenere una lista di conseguenza.
Per utilizzare la funzione lapply() con più argomenti, puoi utilizzare la seguente sintassi di base:
#define function my_function <- function (var1,var2,var3){ var1*var2*var3 } #apply function to list using multiple arguments lapply(my_list, my_function, var2=3, var3=5)
L’esempio seguente mostra come utilizzare questa sintassi nella pratica.
Esempio: come utilizzare lapply() con più argomenti in R
Supponiamo di avere la seguente lista in R:
#create a list my_list <- list(A=1, B=2, C=3, D=4) #view list my_list $A [1] 1 $B [1] 2 $C [1] 3 $D [1] 4
Il codice seguente definisce una funzione che accetta tre variabili e moltiplica le tre variabili insieme, quindi utilizza la funzione lapply() per applicare questa funzione a ciascun valore nel nostro elenco:
#define function my_function <- function (var1,var2,var3){ var1*var2*var3 } #apply function to list using multiple arguments lapply(my_list, my_function, var2=3, var3=5) $A [1] 15 $B [1] 30 $C [1] 45 $D [1] 60
Tieni presente che la funzione lapply() moltiplica ciascun valore nell’elenco per 3 e poi per 5.
Per esempio:
- Primo valore nell’elenco: 1 * 3 * 5 = 15
- Secondo valore nell’elenco: 2 * 3 * 5 = 30
- Terzo valore nell’elenco: 3 * 3 * 5 = 45
- Quarto valore nell’elenco: 4 * 3 * 5 = 60
Utilizzando una sintassi simile, puoi fornire tutti gli argomenti che desideri alla funzione lapply() .
Risorse addizionali
I seguenti tutorial spiegano come eseguire altre attività comuni in R:
Come applicare una funzione a ciascuna riga di frame di dati in R
Come utilizzare la funzione colSums() in R
Come utilizzare la funzione rowSums() in R