Raíz cuadrada en R

Introducción a R Funciones matemáticas
Raíz cuadrada en R con sqrt()

La raíz cuadrada de un número es otro número que multiplicado por sí mismo da el primer número. En R, puedes utilizar la función sqrt para calcular la raíz cuadrada de un valor numérico o vector.

Raíz cuadrada

Para calcular la raíz cuadrada de un número sólo tienes que introducir ese número en la función sqrt de la siguiente manera:

sqrt(8)
2.828427

Recuerda que también puedes introducir un vector numérico, por lo que la función devolverá la raíz cuadrada de cada uno de los elementos de ese vector.

sqrt(c(10, 8, 16, 25))
3.162278 2.828427 4.000000 5.000000

El valor de entrada debe ser numérico o se producirá un error indicando “Error in sqrt(”x”) : non-numeric argument to mathematical function”. Si se produce este error tendrás que transformar tus valores de entrada con la función as.numeric.

También puedes calcular la raíz cuadrada de un número complejo o de un vector complejo.

sqrt(8i)
2+2i

Sin embargo, si se intenta calcular la raíz cuadrada de un número negativo la función devolverá un NaN y aparecerá un aviso indicando “NaNs produced”.

sqrt(-1)
NaN
Warning message:
In sqrt(-1) : NaNs produced

Para resolver este problema puedes utilizar la función abs para calcular el valor absoluto del valor o valores de entrada y luego calcular la raíz cuadrada de los números positivos.

sqrt(abs(-1))
1

Ten en cuenta que no es posible calcular la raíz cuadrada de un factor. Si intentas hacerlo obtendrás un error con el mensaje “Error in Math.factor(x) : ‘sqrt’ not meaningful for factors”.

x <- factor(c(3, 1, 6))

sqrt(x)
Error in Math.factor(x) : ‘sqrt’ not meaningful for factors

Para resolver este error necesitarás transformar tu factor a numérico con la siguiente línea de código y luego calcular la raíz cuadrada de los números:

x <- factor(c(3, 1, 6))
x <- as.numeric(as.character(x))

sqrt(x)
1.732051 1.000000 2.449490

Representar la raíz cuadrada en R

Puedes representar la raíz cuadrada para números positivos usando la siguiente línea de código. En este ejemplo estamos representando las raíces cuadradas de 1 a 100.

plot(sqrt, 0, 100, col = 4, main = "sqrt(x)")

Calcular y representar la raíz cuadrada en R con la función sqrt

Raíz enésima

La raíz cuadrada de un número es el número elevado a la enésima potencia. Por ejemplo, la raíz cuadrada de 8 es \(\sqrt{8} = 8 ^ {1/2} = 2.828427\).

# Raíz cuadrada de 8
8 ^ (1/2)
sqrt(8) # Equivalente

Si quieres calcular la raíz cúbica de un número sólo tienes que elevar el valor a 1/3, como se muestra en el siguiente ejemplo.

# Raíz cúbica de 8
8 ^ (1/3)
2

La siguiente función puede utilizarse para calcular la raíz cúbica de cualquier valor numérico o vector. A continuación se muestra una representación visual de la raíz cúbica de 0 a 100.

# Función raíz cúbica
cube_root <- function(x) {
  
  return(x ^ (1/3))
}

plot(cube_root, 0, 100, col = 4, main = "Raíz cúbica")

Calcular la raíz cúbica en R

Si necesitas calcular la raíz enésima de cualquier número puedes calcular la potencia enésima a mano o crear una función como la siguiente para especificar el valor de entrada y la potencia deseada.

# Función para calcular raíz enésima
nth_root <- function(x, nth) {
  # x: valor de entrada
  # nth: valor indicando la potencia (1/nth)
  return(x ^ (1/nth))
}

# Ejemplo
nth_root(8, nth = 4) # 1.681793