如何在Python中进行多级模型/回归



我有一段时间的年度数据(纵向数据(,对许多受试者进行了重复测量。我认为我需要多层次的建模/回归来处理同一个人随着时间的推移必然相关的测量集群。目前,每年的数据都在单独的表格中。

我想知道scikit学习中是否有一种方法,比如LinearRegression((,能够进行多级回归,其中1级是多年来的所有数据,2级是针对受试者的聚类(每个受试者随时间的测量结果的聚类(。如果是这样的话,最好将纵向数据按长度排列(每个受试者随时间的测量都在一行中(或堆叠(每年的每个测量都是自己的一行(。

有办法做到这一点吗?

多级模型中随机效应的估计是不平凡的,通常必须采用贝叶斯推理方法。

我建议您查看贝叶斯推理包,如pymc3或BRMS(如果您知道R(,在其中可以指定这样的模型。或者,看看R中的lme4包,了解多级模型的完全频繁实现。

此外,我认为你将能够从";睡眠剥夺";数据集,用作纵向数据分析的教科书示例(https://cran.r-project.org/web/packages/lme4/vignettes/lmer.pdf)第4页

要在pymc3中开始,请查看此处:

https://github.com/fonnesbeck/Bios8366/blob/master/notebooks/Section4_7-Multilevel-Modeling.ipynb

最新更新