R es un lenguaje de pro­gra­ma­ción que se utiliza en muchas áreas del análisis de datos y de es­ta­dí­s­ti­ca. Uno de los conceptos más im­po­r­ta­n­tes de la pro­gra­ma­ción en R son las funciones, que ayudan a que el código sea claro y modular.

¿Para qué se necesitan funciones en R?

Las funciones en R se utilizan para es­tru­c­tu­rar, organizar y re­uti­li­zar código. Son muy útiles si quieres realizar análisis complejos, llevar a cabo tareas extensas de pro­ce­sa­mie­n­to de datos o crear análisis pe­r­so­na­li­za­dos. Crear funciones en R tiene una serie de ventajas:

  • Ab­s­tra­c­ción: las funciones en R pro­po­r­cio­nan una manera de en­ca­p­su­lar procesos o cálculos complejos en una interfaz única y fácil de entender. Esto facilita el ma­n­te­ni­mie­n­to y la lectura del código.
  • Re­uti­li­za­ción: las funciones en R permiten ejecutar re­pe­ti­da­me­n­te un de­te­r­mi­na­do bloque de código sin tener que re­es­cri­bi­r­lo cada vez. Esto ahorra tiempo y reduce la su­s­ce­p­ti­bi­li­dad a los errores.
  • Mo­du­la­ri­dad: las funciones en R permiten dividir un proyecto grande en partes más pequeñas y ma­ne­ja­bles.

Sintaxis de las funciones en R

La sintaxis de las funciones en R es co­n­si­s­te­n­te y sigue un patrón claro. Una función en R consta de varios co­m­po­ne­n­tes pri­n­ci­pa­les:

  • Nombre de la función: no­r­ma­l­me­n­te es­pe­ci­fi­ca qué tarea cumple.
  • Ar­gu­me­n­tos: valores o variables que se pasan a la función y que esta procesa. Una función puede aceptar cualquier número de ar­gu­me­n­tos (o ninguno). También se pueden utilizar valores por defecto para los ar­gu­me­n­tos en las funciones en R.
  • Cuerpo de la función: contiene el código que se ejecuta dentro de la función y se encierra entre llaves. Este código puede acceder y procesar los ar­gu­me­n­tos.
  • Valor de retorno: la mayoría de las funciones en R utilizan return() para devolver un valor que re­pre­se­n­ta el resultado del cálculo. Este valor de retorno se puede usar para utilizar el resultado de la función en otras partes del código.

He aquí un ejemplo sencillo de una función de R que suma dos números:

my_add <- function(a, b) {
    result <- a + b
    return(result)
}
R

En este ejemplo, my_add es el nombre de la función, a y b son los ar­gu­me­n­tos, el cuerpo de la función realiza la suma y result(result) devuelve el resultado. También se observa que la de­fi­ni­ción de la función se introduce con la palabra clave function.

Una función también puede contener valores por defecto para los ar­gu­me­n­tos, que se utilizan si no se añaden ar­gu­me­n­tos. La función anterior con valores por defecto sería:

my_add <- function(a = 1, b = 2) {
    result <- a + b
    return(result)
}
R

Si ahora se llama a la función sin añadir ningún argumento, el resultado es el valor 3.

Consejo

Si quieres publicar tu proyecto en R, puedes alquilar tu propio alo­ja­mie­n­to web con espacio ilimitado con IONOS, que te ofrece espacio su­fi­cie­n­te para proyectos web de todo tipo.

Funciones en R prei­n­s­ta­la­das

R tiene una extensa colección de funciones prei­n­s­ta­la­das, también llamadas comandos R, que pueden ser usadas para varios pro­pó­si­tos. Estas funciones están di­s­po­ni­bles y son uti­li­za­bles en R sin de­fi­ni­ción previa. Algunas de las funciones, como la suma, también pueden ser re­em­pla­za­das por ope­ra­do­res en R, en este caso por el operador +.

Si ya no estás apre­n­die­n­do a programar, se­gu­ra­me­n­te te suenen de otros lenguajes de pro­gra­ma­ción algunas de las funciones pre­de­fi­ni­das que se muestran aquí:

  • mean(): calcula la media de los números
  • plot(): función de trazado en R para crear diagramas y gráficos
  • read.csv(): lee datos de un archivo CSV
  • toupper(): convierte todos los ca­ra­c­te­res de una cadena R a ma­yú­s­cu­las
  • sum(): calcula la suma de números
  • print(): muestra los valores en la consola

He aquí un ejemplo de uso de la función prei­n­s­ta­la­da mean() en R. La media de todos los números del vector de R numbers se almacena en la variable result al final del código.

numbers <- c(2, 4, 6, 8, 10)
result <- mean(cifras)
R

Cómo crear funciones propias en R

Crear tus propias funciones en R es una parte fu­n­da­me­n­tal de la pro­gra­ma­ción en este lenguaje. Puedes crear funciones que se adapten es­pe­cí­fi­ca­me­n­te a tus ne­ce­si­da­des. Todo lo que tienes que hacer es observar la sintaxis de R y pensar qué ar­gu­me­n­tos requiere tu función.

Un ejemplo sencillo de una función pe­r­so­na­li­za­da de R que devuelva la cantidad de un número podría ser así:

my_abs <- function(x) {
    if (x < 0) {
        return(-x)
    } else {
        return(x)
    }
}
R

En el ejemplo anterior, la función acepta un argumento x. En el cuerpo de la función, se utiliza una sentencia R-if para comprobar si se trata de un número negativo o positivo y el valor de retorno se ajusta en co­n­se­cue­n­cia.

Uso de funciones en R

Una vez creada una función, puedes uti­li­zar­la en tu código R llamando al nombre de la función y pasando los ar­gu­me­n­tos ne­ce­sa­rios. Puedes utilizar tus propias funciones del mismo modo que las funciones pre­de­fi­ni­das de R.

He aquí un ejemplo de uso de la función my_abs que acabas de crear:

result <- my_abs(-5)
print(result)
R

Si ejecutas el código del ejemplo, verás que aparece un 5 en la pantalla. Por lo tanto, el cálculo del valor absoluto mediante la función lleva al resultado correcto.

Ir al menú principal