可视化一元高斯混合模型
您已经将模型拟合到 fit_mix_example,并将参数提取到 comp_1、comp_2 和 comp_3(以及 proportions)中。现在,请将对应的簇与密度直方图一起绘制出来。
为方便完成该目标,环境中已定义 fun_prop() 函数。该函数与 dnorm 类似,会返回高斯分布的密度值,但扩展为同时接受簇的比例。
本练习是课程的一部分
R 中的混合模型
练习说明
- 将密度直方图与各簇的密度曲线一起绘制。请记住数据框名为
mix_example。 - 使用函数
stat_function(),并将参数fun设为fun_prop,为每个簇绘制其密度分布。
交互式实操练习
通过完成这段示例代码来试试这个练习。
ggplot(___) + ___(aes(x = x, y = ..density..)) +
stat_function(geom = "line", fun = fun_prop,
args = list(mean = ___[1], sd = ___[2],
proportion = proportions[1])) +
stat_function(geom = "line", fun = fun_prop,
args = list(mean = comp_2[1], sd = comp_2[2],
proportion = ___[2]))+
stat_function(geom = "line", fun = ___,
args = list(mean = comp_3[1], sd = comp_3[2],
proportion = proportions[3]))