开始使用免费开始使用

比较模拟数据与历史数据

一项好的模拟应当与历史数据的结果相近。视频中的模拟是否符合这一点?在本练习中,您将探索一种检查模拟结果的方法并找出答案!

首先,您将使用多元正态分布以及 dia 的均值和协方差矩阵来执行一次模拟。然后,您将检查历史数据和模拟数据的均值。它们是否相近?

糖尿病数据集已作为 DataFrame dia 加载,且以下库已为您导入:将 pandas 导入为 pd,将 numpy 导入为 np,以及将 scipy.stats 导入为 st

本练习是课程的一部分

Python 中的蒙特卡洛模拟

查看课程

练习说明

  • 使用多元正态分布以及 dia 的均值和协方差矩阵,执行 10,000 次模拟。
  • 使用 pandas 的 .mean() 函数,分别计算历史数据集 diabmitc 列的均值,以及 df_results 中模拟得到的 bmitc 结果的均值,以评估它们是否相近。
  • 同样地,使用 pandas 的 .cov() 计算 diabmitc 列的协方差矩阵,以及 df_results 中模拟得到的 bmitc 结果的协方差矩阵,以评估它们是否相近。

交互式实操练习

通过完成这段示例代码来试试这个练习。

cov_dia = dia[["age", "bmi", "bp", "tc", "ldl", "hdl", "tch", "ltg", "glu"]].cov()
mean_dia = dia[["age", "bmi", "bp", "tc", "ldl", "hdl", "tch", "ltg", "glu"]].mean()

# Complete the code to perform the simulation
simulation_results = st.multivariate_normal.rvs(____)

df_results = pd.DataFrame(simulation_results,columns=["age", "bmi", "bp", "tc", "ldl", "hdl", "tch", "ltg", "glu"])

# Calculate bmi and tc means for the historical and simulated results
print(dia[["bmi","tc"]].____)
print(____)
      
# Calculate bmi and tc covariances for the historical and simulated results
print(____)
print(____)
编辑并运行代码