Pular para o conteúdo principal

Função mean() do R: Comece a usar as médias

Calcule a média de dados numéricos, lógicos e ponderados usando as funções de média incorporadas do R. Entenda como lidar com valores ausentes e aplicar a função a vetores e quadros de dados.
· 4 min leer

Explore com IA

Quando se trata de resumir dados numéricos no R, o cálculo da média geralmente é a primeira etapa. Geralmente é a primeira coisa que faço, de qualquer forma. 

Agora, "média" não precisa necessariamente se referir à média, mas, neste artigo, estou assumindo que sim, pois vou mostrar a você como trabalhar com a função mean() no R, que é a ferramenta padrão do R para essa finalidade. 

O que mean() faz no R?

A função mean() calcula a média aritmética dos dados numéricos. Em outras palavras, ele soma todos os valores em seu vetor ou coluna e divide pelo número total de valores presentes. Como o mean() faz parte do R básico, não há necessidade de carregar pacotes adicionais. Portanto, ele estará pronto para uso assim que você abrir o R.

Sintaxe da função mean()

Portanto, sabemos o que o mean() faz, mas vamos examinar sua sintaxe básica para que você possa começar a aplicá-la:

mean(x, na.rm = FALSE, ...) 
  • x: Um vetor ou objeto numérico.

  • na.rm: Logical. Se você for TRUE, mean() ignorará os valores de NA.

À medida que avançamos, você deve saber que a manipulação de dados ausentes e o trabalho com diferentes estruturas de dados introduzem algumas nuances, portanto, fique atento. 

Calculando a média de um vetor numérico no R

Provavelmente, a coisa mais básica é calcular a média de um vetor: 

daily_temperatures <- c(72, 68, 75, 70, 69)
mean(daily_temperatures)

Essa linha retorna a média de 72, 68, 75, 70 e 69, que é 70,8.

Manipulação de valores faltantes com na.rm no R

Os conjuntos de dados reais têm valores ausentes. Se os seus dados contiverem itens ausentes, mean() retornará, como comportamento padrão, NA. Isso pode surpreendê-lo se você não estiver esperando por isso, e é por isso que estamos dedicando tempo para aprender sobre o argumento na.rm.

survey_scores <- c(82, 90, NA, 88, 85)
mean(survey_scores)

A execução desse procedimento retornará NA. Para instruir o R a ignorar os valores ausentes, basta definir na.rm = TRUE:

mean(survey_scores, na.rm = TRUE)

Agora, o site mean() calcula a média usando apenas os números disponíveis. 

Usando mean() com quadros de dados no R

Vamos estender seu uso a quadros de dados, que são uma estrutura típica para conjuntos de dados no R. Se você quiser a média de uma coluna específica, basta consultá-la usando o operador $:

student_scores <- data.frame(
  student_name = c("Amir", "Bianca", "Carlos"),
  math_score = c(92, 85, 88)
)

mean(student_scores$math_score)

Isso calcula a pontuação média de todos os alunos em seu quadro de dados. Você pode aplicar essa abordagem a qualquer coluna numérica (mas ela precisa ser uma coluna numérica).

Média de valores lógicos no R

Até agora, concentramo-nos em dados numéricos, mas talvez você se surpreenda ao saber que o mean() também funciona com vetores lógicos. Esse é um detalhe pequeno, mas importante, que não mencionei até agora.

Você pode usar mean() com valores lógicos porque, no R, TRUE é tratado como 1 e FALSE como 0, portanto, a média de um vetor lógico retornará a proporção dos valores de TRUE. Isso pode ser útil se você precisar resumir resultados binários.

quiz_passed_flags <- c(TRUE, FALSE, TRUE, TRUE)
mean(quiz_passed_flags)

Aqui, o resultado é 0,75, pois 3 dos 4 valores são TRUE.

Como encontrar a média ponderada no R 

Às vezes, você precisa de uma média ponderada, quando pensa que valores diferentes contribuem de forma desigual para o resultado. Digite weighted.mean():

course_grades <- c(88, 92, 75)
assignment_weights <- c(0.3, 0.4, 0.3)

weighted.mean(course_grades, assignment_weights)

Ao usar weighted.mean(), você poderá considerar a importância ou a frequência variável entre os valores. mean() não fará isso sozinho.

Alguns aspectos a serem observados

Já mencionei a maioria desses aspectos até agora, mas deixe-me anotar possíveis problemas ou observações em um único lugar:

  • Dados não numéricos: Se o vetor ou a coluna não for numérico ou lógico, o site mean() apresentará um erro.

  • NA manuseio: Esquecer de usar o site na.rm = TRUE quando você tiver dados faltantes fará com que você sempre se atrapalhe.

  • Vetores vazios: mean(numeric(0)) retorna NA com um aviso.

Funções semelhantes no R

O R oferece várias funções relacionadas que ajudam você a explorar seus dados de diferentes ângulos. Todas elas também estão na base do R, o que significa que você pode usar essas funções sem importar bibliotecas. 

  • median(): Para o valor mediano

  • sd(): Para o desvio padrão

  • sum(): Para a soma dos valores

Se você quiser saber mais sobre a importância de diferentes medidas de centro, consulte nosso tutorial muito completo, Mean vs. Mediana: Conhecendo a diferença.

Conclusão

Na maioria das tarefas básicas de análise de dados, o site mean() é a primeira parada para você resumir os números.

Continue aprendendo com nossos cursos, como Introdução ao R e Análise Exploratória de Dados em R.

Josef Waples

Autor

Josef Waples

Temas

Relacionado