Mediana i inne kwantyle

Kolejną miarą położenia stosowaną w analizie danych jest mediana (Me). Można ją zdefiniować jako wartość środkową ułożonych niemalejąco elementów - dla zbioru o nieparzystej liczbie elementów - lub jako średnią arytmetyczną dwóch wartości środkowych - dla zbioru o parzystej liczbie elementów. Mediana dzieli populację na dwie jednakowe części.

Graficzne zobrazowanie pojęcia mediany
Graficzne zobrazowanie pojęcia mediany


Mediana jest jednym z trzech kwartyli. Pierwszy kwartyl Q1 dzieli populację na dwie części w proporcjach 25/75, co oznacza, że 25% elementów ma wartość mniejszą lub równą wartości kwartylu pierwszemu, pozostałe zaś 75% elementów ma wartość większą lub równą wartości kwartylu pierwszemu. Drugim kwartylem jest wspomniana na wstępie mediana. Trzeci kwartyl dzieli populację w stosunku 75/25.

Zobaczmy, jak z problemem obliczenia mediany poradzi sobie Python:
def mediana(y):
    y.sort()
    if len(y)%2 == 0:
        Me = (y[int((len(y)/2)-1)]+y[(int(len(y)/2))])/2
    else:
        Me = y[(int((len(y)+1)/2)-1)]
    return Me

Utworzona funkcja działa w dwóch etapach. W pierwszym etapie lista dostarczona do funkcji w postaci zmiennej y jest sortowana w kolejności niemalejącej. Później sprawdzany jest warunek: czy ilość elementów listy - len(y) - podzielona przez 2 jest równa 0. Jeżeli odpowiedź jest twierdząca funkcja oblicza średnią dwóch środkowych wartości. Gdy warunek nie zostanie spełniony, czyli ilość liczb w liście jest nieparzysta, za medianę zostanie przyjęta środkowa wartość zbioru.

Na koniec pełen kod umożliwiający porównanie średniej arytmetycznej z medianą:
a = [21.2, 22.5, 27.1, 25.8, 22.4, 26.7, 22.3, 24.6]
def avg(x):
    suma = 0
    for i in x:
        suma = suma + i
    return suma/len(x)

def mediana(y):
    y.sort()
    if len(y)%2 == 0:
       Me = (y[int((len(y)/2)-1)]+y[(int(len(y)/2))])/2 
    else:
       Me = y[(int((len(y)+1)/2)-1)]
    return Me

print ("Mediana zbioru: " + str(mediana(a)))
print ("Średnia arytmetyczna wynosi: " + str(avg(a)))

W listę "a" możemy wpisać dowolne liczby pamiętając o zasadzie: części dziesiętne oddziela się kropką natomiast liczby przecinkiem.

Na dziś to już wszystko. Do usłyszenia wkrótce.

Brak komentarzy:

Prześlij komentarz