ПочатиПочніть безкоштовно

Оцінювання показників ІМТ і ЛПВЩ

Яка різниця у прогнозованому прогресуванні хвороби (відгук y) між пацієнтами, які водночас належать до верхніх 10% за ІМТ та верхніх 25% за ЛПВЩ, і пацієнтами, які водночас належать до нижчих 10% за ІМТ та нижчих 25% за ЛПВЩ? Знову ж таки, симуляцію вже виконано для вас: ваше завдання — оцінити результати симуляції в df_results, щоб знайти відповідь на це запитання!

Імпортовано такі бібліотеки: pandas як pd, numpy як np та scipy.stats як st.

Ця вправа є частиною курсу

Моделювання Монте-Карло в Python

Переглянути курс

Інструкції до вправи

  • Доповніть визначення середніх результатів, відфільтрувавши записи для пацієнтів, які водночас належать до верхніх 10% за ІМТ і верхніх 25% за ЛПВЩ, а потім — для пацієнтів, які водночас належать до нижчих 10% за ІМТ і нижчих 25% за ЛПВЩ, використовуючи hdl_q25, hdl_q75, bmi_q10, bmi_q90, які вже визначено для вас.

Інтерактивна практична вправа

Спробуйте виконати цю вправу, доповнивши цей зразок коду.

simulation_results = st.multivariate_normal.rvs(mean=mean_dia, size=20000, cov=cov_dia)
df_results = pd.DataFrame(simulation_results,columns=["age", "bmi", "bp", "tc", "ldl", "hdl", "tch", "ltg", "glu"])
predicted_y = regr_model.predict(df_results)
df_y = pd.DataFrame(predicted_y, columns=["predicted_y"])
df_summary = pd.concat([df_results,df_y], axis=1)
hdl_q25 = np.quantile(df_summary["hdl"], 0.25)
hdl_q75 = np.quantile(df_summary["hdl"], 0.75)
bmi_q10 = np.quantile(df_summary["bmi"], 0.10)
bmi_q90 = np.quantile(df_summary["bmi"], 0.90)

# Complete the mean outcome definitions
bmi_q90_hdl_q75_outcome = np.mean(df_summary[(df_summary["bmi"] > bmi_q90) & (____)]____) 
bmi_q10_hdl_q15_outcome = np.mean(df_summary[(df_summary["bmi"] < bmi_q10) & (____)]____) 
y_diff = bmi_q90_hdl_q75_outcome - bmi_q10_hdl_q15_outcome
print(y_diff)
Редагувати та запускати код