Raíz cuadrada en R
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)")
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")
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