Вычислить математическое ожидание,дисперсию,медиану,нижний и верхний дециль,нижний и верхний квартиль полученных данных (Дискретный случай) Сгенерируйте дискретную случайную величину X, для этого сгенерируйте натуральное число n (число принимаемых величиной X значений, 10<=n<=15), вероятностей pi и n значений Vi, (20<=Vi<=40). Вычислите математическое ожидание и дисперсию случайной величины X. Сгенерируйте и запишите в массив N (= 1000, 2000, 3000) реализаций случайной величины X. Вычислите математическое ожидание, дисперсию, медиану, нижний и верхний дециль, нижний и верхний квартиль полученных данных (N реализаций величины Х). Python!!
n = np.random.randint(10, 16) # количество значений X pi = np.random.rand(n) # вероятности pi = pi / np.sum(pi) # нормировка вероятностей Vi = np.random.randint(20, 41, n) # значения X = np.random.choice(Vi, p=pi)
import numpy as np
Генерация случайной величины Xn = np.random.randint(10, 16) # количество значений X
Вычисление математического ожидания и дисперсииpi = np.random.rand(n) # вероятности
pi = pi / np.sum(pi) # нормировка вероятностей
Vi = np.random.randint(20, 41, n) # значения
X = np.random.choice(Vi, p=pi)
mean_X = np.sum(pi Vi)
Генерация N реализаций случайной величины Xvar_X = np.sum(pi (Vi - mean_X)**2)
N = [1000, 2000, 3000]
Вычисление математического ожидания, дисперсии, медианы, децилей и квартилейrealizations = []
for n in N:
realizations.append(np.random.choice(Vi, size=n, p=pi))
for realization in realizations:
print(f"Для {len(realization)} реализаций:")mean = np.mean(realization)
variance = np.var(realization)
median = np.median(realization)
deciles = np.percentile(realization, [10, 90])
quartiles = np.percentile(realization, [25, 75])
print(f"Математическое ожидание: {mean}")
print(f"Дисперсия: {variance}")
print(f"Медиана: {median}")
print(f"Нижний и верхний дециль: {deciles[0]}, {deciles[1]}")
print(f"Нижний и верхний квартиль: {quartiles[0]}, {quartiles[1]}")
print("-------------")