正如弗兰克所指出的,这个问题具有很强的统计特征。但是一种可能的解决方案确实需要一些复杂的编程,所以将它放在 R 线程中也许是合法的。
为了“将已知误差纳入该估计”,一种标准方法是多重插补,如果你想走这条路,R 是一个很好的方法。这有点涉及,所以你必须自己制定代码的细节,但如果你了解基本策略,它就相对简单了。
基本思想是,对于数据集中的每个主题,您首先使用已发布的模型和 BMI、年龄和性别来估算腰围,以确定期望值,然后添加一些模拟的随机噪声;您必须通读该出版物以确定该噪声的数值。填写完每个缺失值后,您只需执行要运行的任何统计计算,并保存标准错误。现在,您创建第二个数据集,该数据集源自具有缺失值的原始数据集,再次使用已发布的模型估算预期值以及一些随机噪声——由于噪声是随机的,因此该数据集的估算值应该是不同于第一个数据集的估算值。现在做你的统计计算,并保存标准误差,这与第一个估算数据集的标准误差略有不同,因为估算值包含随机噪声。重复一堆。最后,对保存的标准误差进行平均,这将为您提供一个标准误差的估计值,其中包含归因于插补的不确定性。
您所做的实际上是一个两级模拟:在低级别上,对于每次迭代,您都使用已发布的模型创建一个模拟数据集,其中包含缺失数据的嘈杂估算值,然后为您提供模拟标准误差,以及然后在较高的层次上,您重复该过程以获得此类模拟标准误差的样本,然后您对其进行平均以获得您的总体估计。
这在 SAS 或 Stata 等传统统计数据包中很难做到,尽管这是可能的,但在 R 中更容易做到,因为它基于适当的编程语言。所以,是的,你的问题正确地说是一个统计问题,但最好的解决方案可能是 R 特定的。