Una función agrupa código reutilizable. En R se crean con la palabra clave function y se guardan en una variable.
Si no se escribe return(), R devuelve el valor de la última expresión:
Los argumentos pueden tener valores por defecto:
Las variables creadas dentro de una función son locales: no existen fuera de ella (esto se llama ámbito o "scope").
Ejemplo aplicado — una media móvil simple sobre un vector de precios:
En la próxima lección veremos cómo importar datos desde archivos CSV.
Curso de R
« Lección anterior: Control de flujo: if, for y while | Lección siguiente: Importar datos en R (CSV y data frames) »
doble <- function(x) {
return(x * 2)
}
doble(5) # 10Si no se escribe return(), R devuelve el valor de la última expresión:
doble <- function(x) {
x * 2
}Los argumentos pueden tener valores por defecto:
saludar <- function(nombre, saludo = "Hola") {
paste(saludo, nombre)
}
saludar("Ana") # "Hola Ana"
saludar("Ana", "Buenas") # "Buenas Ana"Las variables creadas dentro de una función son locales: no existen fuera de ella (esto se llama ámbito o "scope").
Ejemplo aplicado — una media móvil simple sobre un vector de precios:
media_movil <- function(precios, n) {
resultado <- c()
for (i in n:length(precios)) {
ventana <- precios[(i - n + 1):i]
resultado <- c(resultado, mean(ventana))
}
resultado
}
precios <- c(10, 11, 12, 13, 14)
media_movil(precios, 3) # 11 12 13En la próxima lección veremos cómo importar datos desde archivos CSV.
Curso de R
« Lección anterior: Control de flujo: if, for y while | Lección siguiente: Importar datos en R (CSV y data frames) »