O desvio padrão é uma técnica estatística que mostra até que ponto os valores de uma variável estudada se desviam, em média, da média aritmética. Ele é usado para determinar se as unidades em uma amostra ou população são semelhantes em relação à característica analisada, ou se diferem significativamente entre si. Se você quer aprender o que é o desvio padrão ou como calculá-lo no R, continue lendo.
Este guia oferece uma explicação detalhada de como calcular o desvio padrão no R, abordando diferentes métodos e exemplos práticos para ajudar o usuário a analisar dados de forma eficiente.
O desvio padrão mede o desvio médio dos valores individuais de uma variável em relação à média aritmética. É uma medida intuitiva de variabilidade de uma distribuição. Se somássemos apenas as diferenças em relação à média, o resultado seria sempre zero — o que não teria utilidade.
A fórmula matemática do desvio padrão é:
=∑(xi−μ)2N
Onde:
Σ representa a soma,
xix_ixi é cada observação,
μ\muμ é a média dos dados,
NNN é o número total de observações.
O desvio padrão costuma ser abreviado como DP (Standard Deviation). Quanto menor for o desvio padrão, mais próximos os valores estarão da média — indicando que os dados são mais consistentes. Para avaliar se o DP é grande ou pequeno, é importante conhecer a escala utilizada.
O desvio padrão é extremamente útil para comparar a variabilidade entre dois conjuntos de dados de tamanho e média semelhantes. Usar apenas a média simples nem sempre ajuda em análises mais profundas.
Por exemplo: De que adianta saber o salário médio de uma empresa, se não sabemos o quanto esses salários variam? Todos os funcionários ganham o mesmo? Ou será que um diretor com salário muito alto está elevando a média? Para entender a realidade, precisamos calcular o desvio padrão.
Da mesma forma, o desvio padrão é importante para avaliar riscos em investimentos. Se uma empresa apresenta um lucro médio anual de 4% e outra de 5%, isso não significa necessariamente que a segunda é melhor.
Se a primeira empresa tem flutuações pequenas no valor das ações e a segunda apresenta variações de dezenas de pontos percentuais, o primeiro investimento é muito menos arriscado. Assim, o desvio padrão ajuda a comparar diferentes retornos e seus níveis de risco.
Para qualquer análise, primeiro é preciso ter dados. No R, é possível inserir manualmente os dados criando um vetor ou importá-los de fontes externas, como arquivos CSV ou Excel.
data <- c(4, 8, 6, 5, 3, 7)
Também é possível importar conjuntos de dados com a função 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)
A maneira mais simples de calcular o desvio padrão de uma amostra é usar a função integrada sd() do R.
sd(data)
Saída:
[1] 1.870829
Se o conjunto de dados contiver valores ausentes, basta adicionar o parâmetro na.rm = TRUE para ignorá-los:
standard_deviation <- sd(data, na.rm = TRUE)
Para calcular o desvio padrão da população, siga estes passos:
Calcule a média.
Subtraia a média de cada valor.
Eleve as diferenças ao quadrado.
Calcule a média dos quadrados (variância).
Tire a raiz quadrada da variância (desvio padrão).
Exemplo:
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)
Suponha que você queira analisar as notas de alunos em diferentes disciplinas. A variável categórica aqui é “Disciplina”, e queremos calcular a média e o desvio padrão para cada grupo.
Podemos usar o pacote dplyr para isso:
install.packages("dplyr")
Seguindo nosso exemplo anterior, vamos pegar um conjunto de dados que contém notas de alunos em diferentes disciplinas:
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)
Saída::
# A tibble: 2 × 2
Subject Standard_Deviation
<chr> <dbl>
1 History 3.511885
2 Math 6.027714
No R, há várias maneiras de calcular o desvio padrão por coluna:
data_frame <- data.frame(A = c(1, 2, 3), B = c(4, 5, 6))
apply(data_frame, 2, sd)
Ou usando dplyr:
library(dplyr)
data_frame %>%
summarise(across(everything(), sd))
Em alguns casos, é necessário calcular o desvio padrão ponderado, por exemplo, quando os grupos têm tamanhos diferentes (como um time com 5 jogadores e outro com 50). Sem ponderação, ambos influenciariam o cálculo da mesma forma, o que distorceria o resultado.
A fórmula é a seguinte:
Dw=∑wi(xi−μw)2∑wi
Onde:
μw=∑wixi∑wi
O R não possui uma função integrada para isso, mas podemos calcular 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)
Saída:
[1] 3.853245
O desvio padrão é simples de calcular, apesar de a fórmula parecer complexa à primeira vista. É uma das ferramentas mais importantes da estatística, e o R torna seu uso ainda mais fácil e rápido. Se você quer começar a estudar análise de dados ou data science, aprender a calcular e interpretar o desvio padrão é essencial — ele permite entender melhor a consistência e a variação dos seus dados.