Folosește lapply cu propria ta funcție
Așa cum a explicat Filip în videoclipul introductiv, poți folosi lapply() și cu propriile tale funcții. Trebuie doar să definești o funcție nouă și să te asiguri că este disponibilă în spațiul de lucru. După aceea, o poți folosi în interiorul lapply() exact ca pe orice funcție din R de bază.
În exercițiul anterior ai folosit deja lapply() o dată pentru a converti informațiile despre statisticienii tăi preferați, pionieri în domeniu, într-o listă de vectori compuși din două șiruri de caractere. Acum vom scrie cod pentru a extrage separat numele și anii de naștere.
Codul exemplu include deja definiția funcției select_first(), care primește un vector ca intrare și returnează primul element al acestuia.
Acest exercițiu face parte din cursul
R intermediar
Instrucțiuni pentru exercițiu
- Aplică
select_first()peste elementele dinsplit_lowfolosindlapply()și atribuie rezultatul unei noi variabile numitenames. - Apoi, scrie o funcție
select_second()care face exact același lucru pentru al doilea element al unui vector primit ca intrare. - În final, aplică funcția
select_second()pestesplit_lowși atribuie rezultatul variabileiyears.
Exercițiu interactiv practic
Încearcă acest exercițiu completând acest cod de exemplu.
# Code from previous exercise:
pioneers <- c("GAUSS:1777", "BAYES:1702", "PASCAL:1623", "PEARSON:1857")
split <- strsplit(pioneers, split = ":")
split_low <- lapply(split, tolower)
# Write function select_first()
select_first <- function(x) {
x[1]
}
# Apply select_first() over split_low: names
# Write function select_second()
# Apply select_second() over split_low: years