使用平均长度和平均体重来计算平均 BMI?

机器算法验证 意思是 样本 人口
2022-03-08 01:08:00

使用给定人群的平均长度 ( h ) 和平均体重 ( w )) 来计算该人群的平均体重指数 ( BMI=wh2 ) 是否有效?

3个回答

从数学上讲,这些不一定是接近的。如果是 E(Y/X2)=E(Y)/E(X)2的情况,它会起作用,但这通常是错误的,在某些特定情况下,它可能非常遥远。

然而,对于一组相当现实的双变量身高和体重数据来说,影响似乎很小。

例如,考虑 Brainard 和 Burmaster (1992) [1] 中的美国成年男性身高和体重模型;该模型是身高和对数(体重)的双变量法线,非常适合身高体重数据,并且可以轻松获得逼真的模拟。一个好的女性模型稍微复杂一些,但我不认为它会对 BMI 近似值的质量产生太大影响。我只做男性,因为一个非常简单的模型非常好。

将男性身高和体重的模型转换为公制并在 R 中模拟 100,000 个双变量点,然后计算个体 BMI 并因此计算平均 BMI,以及计算(平均体重)平方的平均身高,结果是平均 BMI是(四位数)25.21 和h¯/w¯2是 25.22,看起来非常接近。

从改变参数的效果来看,看起来使用有偏变量均值估计器对女性的影响可能会稍大一些,但仍然不够大,这可能是一个很大的问题。

理想情况下,应该检查更接近您想要使用它的任何情况的东西,但它可能会非常好。

因此,对于典型情况,在实践中似乎不太可能成为问题。

[1]:Brainard, J. 和 Burmaster, DE (1992),
“美国男性和女性身高和体重的双变量分布”,
风险分析,卷。12,第 2 期,第 267-275 页

这并不完全正确,但通常不会有很大的不同。

例如,假设您的人口体重分别为 80、90 和 100 公斤,身高分别为 1.7、1.8 和 1.9m。那么 BMI 是 27.68、27.78 和 27.70。BMI 的平均值为 27.72。如果你根据体重和身高的平均值计算 BMI,你会得到 27.78,这略有不同,但通常不会有太大的差异。

尽管我同意其他答案,即这种方法很可能会逼近平均 BMI,但我想指出这只是一个近似值。

我实际上倾向于说您不应该使用您描述的方法,因为它不太准确。计算每个人的 BMI 并取其平均值是微不足道的,从而为您提供真正的平均 BMI。

在这里,我说明了两个极端,其中体重和长度的平均值保持不变,但平均 BMI 实际上是不同的:

使用以下(matlab)代码:

weight = [60, 61, 62, 100, 101, 102]; % OUR DATA
length = [1.5, 1.5, 1.5, 1.8, 1.8, 1.8;]; % OUR DATA
length = length.^2;
bmi = weight./length;
scatter(1:size(weight,2), bmi, 'filled');
yline(mean(bmi),'red','LineWidth',2);
yline(mean(weight)/mean(length),'blue','LineWidth',2);
xlabel('Person');
ylabel('BMI');
legend('BMI', 'mean(bmi)', 'mean(weight)/mean(length)', 'Location','northwest');

我们得到: mean_bmi2

如果我们简单地重新排序长度,我们会得到不同的平均 BMI,而 mean(weight)/mean(length^2) 保持不变:

weight = [60, 61, 62, 100, 101, 102]; % OUR DATA
length = [1.8, 1.8, 1.8, 1.5, 1.5, 1.5;]; % OUR DATA (REORDERED)
... % rest is the same

平均体重指数

同样,使用真实数据,您的方法很可能会逼近真实的平均 BMI,但您为什么要使用不太准确的方法呢?

在问题范围之外:可视化数据总是一个好主意,这样您就可以实际看到分布。例如,如果您注意到某些集群,您还可以考虑为这些集群获取单独的方法(例如,在我的示例中分别为前 3 人和最后 3 人)