Iniciar sesión
Iniciar sesión

Desviación estándar en R: guía completa para principiantes

Desviación estándar en R: guía completa para principiantes
Hostman Team
Technical writer
R
14.10.2025
Reading time: 6 min

La desviación estándar es una técnica estadística que muestra hasta qué punto los valores de una característica estudiada se desvían, en promedio, de la media aritmética. Se utiliza para determinar si las unidades de una muestra o población son similares con respecto a la característica estudiada o si difieren significativamente entre sí. Si deseas aprender qué es la desviación estándar o cómo calcularla en R, sigue leyendo.

Esta guía ofrece una explicación detallada sobre cómo calcular la desviación estándar en R, abordando distintos métodos y ejemplos prácticos para ayudarte a analizar datos de manera eficiente.

La matemática detrás de la desviación estándar

La desviación estándar mide el grado promedio en que los valores individuales de una variable se desvían de la media. Es una medida intuitiva de la variabilidad de una distribución. Si simplemente sumáramos las distancias respecto a la media, el resultado siempre sería 0, lo cual no sería útil.

La fórmula matemática de la desviación estándar es:

=∑(xi​−μ)2N​

Donde:

  • Σ representa la suma,

  • xix_ixi​ es cada observación,

  • μ\muμ es la media de los datos,

  • NNN es el número total de observaciones.

La desviación estándar suele abreviarse como DE (Standard Deviation). Cuanto menor sea la desviación estándar, más próximos estarán los valores a la media, lo que indica una mayor consistencia en los datos. Para interpretar correctamente si una DE es grande o pequeña, es importante conocer el rango de la escala utilizada.

La importancia de la desviación estándar

La desviación estándar es especialmente útil para comparar la variabilidad entre dos conjuntos de datos de tamaño y media similares. La media por sí sola no siempre refleja la realidad.

Por ejemplo: De poco sirve conocer el salario promedio de una empresa si no sabemos cuánto varían los salarios. ¿Todos los empleados ganan lo mismo? ¿O un directivo con un sueldo elevado está aumentando artificialmente la media? Para responder estas preguntas, debemos calcular la desviación estándar.

De manera similar, la desviación estándar ayuda a evaluar el riesgo en decisiones de inversión. Si una acción tiene un rendimiento promedio anual del 4% y otra del 5%, no necesariamente significa que la segunda sea mejor.

Si la primera acción presenta fluctuaciones pequeñas a lo largo del año, mientras que la segunda varía en decenas de puntos porcentuales, la primera será mucho menos arriesgada. Por ello, el desvío estándar es una herramienta clave para comparar diferentes rendimientos y su nivel de riesgo.

Diferentes formas de calcular la desviación estándar en R

Para realizar cualquier análisis, primero debemos contar con datos. En R, puedes introducirlos manualmente creando un vector o importarlos desde fuentes externas como archivos CSV o Excel.

data <- c(4, 8, 6, 5, 3, 7)

También puedes importar datos con la función read.csv():

# Read a CSV file into a data frame
data <-read.csv("datafile.csv")
# Install the 'readxl' package install.packages("readxl")
# Load the library library(readxl)
# Read an Excel file into a data frame data_excel <- read_excel("datafile.xlsx", sheet = 1)

Desviación estándar muestral en R

La forma más sencilla de calcular la desviación estándar de una muestra es con la función integrada sd().

sd(data)

Resultado:

[1] 1.870829

Si tu muestra contiene valores faltantes, puedes excluirlos usando el parámetro na.rm = TRUE:

standard_deviation <- sd(data, na.rm = TRUE)

Desviación estándar poblacional en R

Para calcular la desviación estándar poblacional, sigue estos pasos:

  1. Calcula la media.

  2. Resta la media de cada valor.

  3. Eleva las diferencias al cuadrado.

  4. Calcula la media de los valores cuadrados (varianza).

  5. Calcula la raíz cuadrada de la varianza.

Ejemplo:

mean_data <- mean(data)
squared_differences <- (data - mean_data)^2
mean_squared_diff <- mean(squared_differences)
standard_deviation_manual <- sqrt(mean_squared_diff)
print(standard_deviation_manual)

Desviación estándar por grupo en R

Supongamos que queremos analizar las calificaciones de estudiantes en distintas asignaturas. La variable categórica es “Asignatura”, y queremos calcular la desviación estándar para cada grupo.

Podemos hacerlo con el paquete dplyr:

install.packages("dplyr")

Siguiendo nuestro ejemplo anterior, tomemos un conjunto de datos que contiene las calificaciones de los estudiantes en diferentes materias:

library(dplyr)

# Example data frame with class and grades
data <- data.frame(
  Subject = c('Math', 'Math', 'Math', 'History', 'History', 'History'),
  grade = c(85, 90, 78, 88, 92, 85)
)

# Calculate standard deviation for each class
grouped_sd <- data %>%
  group_by(Subject) %>%
  summarise(Standard_Deviation = sd(grade))

print(grouped_sd)

Resultado:

# A tibble: 2 × 2
  Subject   Standard_Deviation
  <chr>              <dbl>
1 History           3.511885
2 Math              6.027714       

Desviación estándar por columna

En R, hay varias maneras de calcular la desviación estándar por columna:

data_frame <- data.frame(A = c(1, 2, 3), B = c(4, 5, 6))
apply(data_frame, 2, sd)

O con dplyr:

library(dplyr)
data_frame %>%
  summarise(across(everything(), sd))

Desviación estándar ponderada

En algunos casos, es necesario calcular una desviación estándar ponderada, por ejemplo, cuando los grupos tienen tamaños diferentes (como un equipo con 5 jugadores y otro con 50). Si no aplicamos ponderaciones, ambos equipos influirán por igual en el cálculo, lo que generará un resultado erróneo.

La fórmula es la siguiente:

Dw=∑wi​(xi​−μw​)2∑wi​​​

Donde:

  • 𝑤i ​representa el peso de cada punto de datos,
  • 𝑥i ​ denota cada punto de datos,
  • μw es la media ponderada, calculada como:
μw​=​∑wi​xi∑wi​​

R no cuenta con una función incorporada para este cálculo, pero se puede hacer manualmente:

# Example data with grades and weights
grades <- c(85, 90, 78, 88, 92, 85)
weights <- c(0.2, 0.3, 0.1, 0.15, 0.1, 0.15)

# Calculate the weighted mean
weighted_mean <- sum(grades * weights) / sum(weights)

# Calculate the squared differences from the weighted mean
squared_differences <- (grades - weighted_mean)^2

# Calculate the weighted variance
weighted_variance <- sum(weights * squared_differences) / sum(weights)

# Calculate the weighted standard deviation
weighted_sd <- sqrt(weighted_variance)

print(weighted_sd)

Risultado:

[1] 3.853245

Conclusión

La desviación estándar es fácil de calcular, incluso si su fórmula parece compleja al principio. Es una de las herramientas fundamentales de la estadística, y R facilita enormemente su aplicación. Si quieres adentrarte en el mundo de la ciencia de datos o el análisis estadístico, aprender a calcular e interpretar la desviación estándar es esencial — te ayudará a comprender mejor la consistencia y la dispersión de tus datos.

R
14.10.2025
Reading time: 6 min

Similares

¿Tienes preguntas,
comentarios o inquietudes?

Nuestros profesionales están disponibles para asistirte en cualquier momento,
ya sea que necesites ayuda o no sepas por dónde empezar.
Hostman's Support