Como calcular a mediana de uma lista de valores em Python sem usar bibliotecas
Calcular a mediana de uma lista de valores em Python sem bibliotecas
Em Estatística, a mediana é um valor que divide um conjunto de dados ordenados em duas partes iguais. É o valor que está exatamente no meio de um conjunto de dados ordenados, onde metade dos valores está acima dele e a outra metade está abaixo.
A mediana é uma medida de tendência central alternativa à média, que é a soma de todos os valores dividida pelo número total de valores.
A mediana é particularmente útil quando os dados apresentam valores extremos ou outliers, que podem afetar significativamente a média e torná-la menos representativa do conjunto de dados como um todo.
Por exemplo, suponha que temos o seguinte conjunto de dados: 1, 3, 5, 7, 9. A mediana deste conjunto de dados é 5, já que é o valor que está exatamente no meio da lista, dividindo-a em duas partes iguais: 1, 3 e 5 abaixo dele e 7 e 9 acima dele.
Já a média deste conjunto de dados é (1+3+5+7+9)/5 = 5, o que também representa uma medida de tendência central, mas que é mais sensível a valores extremos.
Fórmulas para cálculo de mediana
O modo de calcular a mediana é diferente para conjuntos com quantidade par ou ímpar de observações. Sendo assim, podemos empregar as seguintes fórmulas para calcular a mediana de um conjunto de valores já ordenados:
Número ímpar de observações
Se o número total de observações (valores) for ímpar, então a fórmula usada para calcular a mediana será a seguinte:
Onde n é o número de observações.
Por exemplo, no conjunto de sete dados ordenados (1, 4, 5, 7, 8, 9, 12) a mediana será (7 + 1) / 2 = 4º elemento, ou seja, o valor 7, que é claramente o valor central
Número par de observações
Se o número total de observações (valores) for par, então a fórmula usada para calcular a mediana será a seguinte:
Onde n é o número de observações, e a mediana é portanto a média dos dois valores centrais.
Por exemplo, no conjunto de oito dados ordenados (1, 3, 4, 5, 7, 8, 9, 12) a mediana será:
{8 / 2 + [(8 / 2) + 1]} / 2 = 4º elemento + 5º elemento) / 2 = (5 + 7) / 2 = 6
Ou seja, o valor 6. Note que este valor não pertence à lista, mas é a mediana dos valores fornecidos.
Calcular a mediana usando Python, sem usar módulos adicionais
Podemos calcular a mediana de uma lista em Python seguindo os seguintes passos:
- Ordenar a lista de valores em ordem crescente.
- Verificar se a lista tem um número ímpar de elementos ou um número par de elementos.
- Se a lista tiver um número ímpar de elementos, a mediana é o valor do meio. Se a lista tiver um número par de elementos, a mediana é a média dos dois valores do meio.
Abaixo temos um exemplo de uma função codificada em Python que implementa esses passos:
def calcularMediana(lista): n = len(lista) sorted_lista = sorted(lista) if n % 2 == 0: # Número par de elementos: média dos dois valores do meio. metade_direita = n//2 metade_esquerda = metade_direita - 1 mediana = (sorted_lista[metade_esquerda] + sorted_lista[metade_direita])/2 else: # Número ímpar de elementos: mediana é o valor do meio. metade = n//2 mediana = sorted_lista[metade] return mediana
Neste exemplo, a função calcularMediana() recebe uma lista de valores como argumento e retorna a mediana da lista. A função primeiro calcula o número de elementos na lista, em seguida, ordena a lista em ordem crescente usando a função sorted(). Em seguida, a função verifica se a lista tem um número ímpar ou par de elementos e calcula a mediana de acordo.
Por fim, a função retorna a mediana.
Chamamos essa função passando uma lista de valores como argumento. Por exemplo:
if __name__=='__main__': minha_lista = [1, 5, 2, 7, 3, 9, 8, 4, 6, 5, 3, 12, 11, 18, 15, 8, 7, 2, 9] mediana = calcularMediana(minha_lista) print("A mediana da lista é:", mediana)
Resultado:
A mediana da lista é: 7
É isso aí! Nesta lição mostrei como criar uma função em Python que calcula a mediana de uma lista de valores passados em uma lista, se o emprego de bibliotecas especializadas como o numpy.
Escreva um comentário