Jak obliczyć oczekiwaną wartość w pythonie (z przykładami)


Rozkład prawdopodobieństwa mówi nam, jakie jest prawdopodobieństwo, że zmienna losowa przyjmie określone wartości.

Na przykład poniższy rozkład prawdopodobieństwa informuje nas o prawdopodobieństwie, że dana drużyna piłkarska zdobędzie określoną liczbę bramek w danym meczu:

Aby znaleźć wartość oczekiwaną rozkładu prawdopodobieństwa, możemy skorzystać z następującego wzoru:

µ = Σx * P(x)

Złoto:

  • x: wartość danych
  • P(x): Prawdopodobieństwo wartości

Na przykład oczekiwaną liczbę bramek dla drużyny piłkarskiej można obliczyć w następujący sposób:

μ = 0*0,18 + 1*0,34 + 2*0,35 + 3*0,11 + 4*0,02 = 1,45 gola.

Aby obliczyć wartość oczekiwaną rozkładu prawdopodobieństwa w Pythonie, możemy zdefiniować prostą funkcję:

 import numpy as np

def expected_value(values, weights):
    values = np. asarray (values)
    weights = np. asarray (weights)
    return (values * weights). sum ()/weights. sum ()

Poniższy przykład pokazuje, jak w praktyce wykorzystać tę funkcję.

Przykład: Obliczanie oczekiwanej wartości w Pythonie

Poniższy kod pokazuje, jak obliczyć wartość oczekiwaną rozkładu prawdopodobieństwa za pomocą zdefiniowanej wcześniej funkcji oczekiwanej_wartości() :

 #define values
values = [0, 1, 2, 3, 4]

#define probabilities
probs = [.18, .34, .35, .11, .02]

#calculate expected value
expected_value(values, probs)

1.450000

Oczekiwana wartość to 1,45 . Odpowiada to wartości, którą obliczyliśmy wcześniej ręcznie.

Należy pamiętać, że ta funkcja zwróci błąd, jeśli długość tablicy wartości i tablicy prawdopodobieństwa nie są równe.

Na przykład:

 #define values
values = [0, 1, 2, 3, 4]

#define probabilities
probs = [.18, .34, .35, .11, .02, .05, .11]

#attempt to calculate expected value
expected_value(values, probs)

ValueError : operands could not be broadcast together with shapes (5,) (7,) 

Otrzymujemy błąd, ponieważ długość pierwszej tablicy wynosi 5 , a długość drugiej tablicy wynosi 7 .

Aby ta funkcja wartości oczekiwanej działała, długość obu tablic musi być równa.

Dodatkowe zasoby

Poniższe samouczki wyjaśniają, jak obliczać inne metryki w Pythonie:

Jak obliczyć średnią obciętą w Pythonie
Jak obliczyć średnią geometryczną w Pythonie
Jak obliczyć błąd standardowy średniej w Pythonie

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *