- 已编辑
假设有一个数据集,由 10 个实验者 ( id ) 分别独立采集,分为 3 个预测变量 ( x1 ~ x3 ) ,1 个连续响应变量 ( y )
有 5 个实验者分别采集了 1 组数据, 3 个采集了 5 组数据,2 个采集了 10 组数据,共 40 个观测行
即每个实验者采集 1 ~ 10 组不等的数据,数据集的行在 10 ~ 100 之间
采集指标一致,但方法略有差别( 如工具、采集时间等的影响 ),造成同一实验者采集的数据可能更相似( 存在组内相关 )
形如:
| id | x1 | x2 | x3 | y |
|-----|-----|-----|-----|-----|
| 1 | 10 | 1 | 1 | 111 |
| 2 | 11 | 3 | 0 | 222 |
| ... | ... | ... | ... | ... |
| 10 | 88 | 9 | 0 | 999 |
| 10 | 99 | 9 | 1 | 888 |
目标是要建立多元线性回归方程进行预测,但担心同一个研究者的数据采集模式的偏好对模型产生重大影响
我尝试
- 用 线性混合模型 LMM,将 id 作为随机因子,但考虑很多 id 内只有 1 个观测,似乎这种方法不稳妥,R 也会报警告
- 用 cluster bootstrap 的方法 ( Cameron, Gelbach & Miller, 2008 ),但不确定是否合理?因为这个方法本身的设计不是针对性地处理该类问题。?
再者,R 中虽有rms::bootcov()
、clusterSEs::cluster.wild.glm()
等函数使用该方法,但如以上示例,各组别 ( clusters ) 内的观测行并不相等,甚至很多为 1,我并没有在 R 中找到这种情况下的统计和处理 (实话是我不会这种深度的编程)
另,网上有 Cluster Bootstrap with Unequally Sized Clusters 的抽样方法,wiki 中也有提到
问题:
- 如果要最大化的利用数据,现有的统计中相对好一点的处理方式是什么?cluster bootstrap 理论上是合理的吗?
- 如果 cluster bootstrap 合理,有已经成熟的针对 unequal / unbalanced cluster sizes 的 R 方案吗?或者有通过轻量编程可以解决的参考资料?
PS: 没有系统学过统计,水平也渣,强迫自己生啃那些方法背后的原理、公式,实在不能及其万一,如果表达不清或者问得太低级,请直说坦白无妨。