Programación funcional en R

Programación funcional intermedia con purrr

Colin Fay

Data Scientist & R Hacker at ThinkR

Sobre los cálculos en R

«Para entender los cálculos en R, dos lemas ayudan:

- Todo lo que existe es un objeto.

- Todo lo que ocurre es una llamada a función.»    -John Chambers

class(`+`)
"function"
class(`<-`)
"function"
Programación funcional intermedia con purrr

R como lenguaje de programación funcional

Las funciones pueden

  • manipularse

  • guardarse en una variable

  • ser lambda

 

  • guardarse en una lista

  • ser argumentos de una función

  • ser devueltas por una función

Programación funcional intermedia con purrr

Sobre las «funciones puras»

En una función pura:

  • la salida solo depende de la entrada

  • no hay «efectos secundarios»

# La salida depende solo de las entradas
# Sin efectos secundarios
sum(1:10)
55
mean(1:100)
50.5
Programación funcional intermedia con purrr

Las funciones impuras son útiles

Funciones impuras:

  • Dependen del entorno

  • Tienen «efectos secundarios»

# La salida depende del entorno 
Sys.Date()
"2018-10-04"
# Solo efecto secundario
write.csv(iris, "iris.csv")
Programación funcional intermedia con purrr

Para saber más sobre programación funcional

Programación funcional intermedia con purrr

¡Vamos a practicar!

Programación funcional intermedia con purrr

Preparing Video For Download...