【发布时间】:2014-12-02 13:24:59
【问题描述】:
我有一个如下所示的数据集:
ID SEX WEIGHT BMI
1 2 65 25
1 2 65 25
1 2 65 25
2 1 70 30
2 1 70 30
2 1 70 30
2 1 70 30
3 2 50 18
3 2 50 18
4 1 85 20
4 1 85 20
我想计算无脂肪质量 (FFM) 并将该值附加到数据集中每个人的新列中。这些是计算男性和女性 FFM 的函数:
男性 (SEX=1):
FFMCalMale <- function (WEIGHT, BMI) {
FFM = 9270*WEIGHT/(6680+216*BMI)
}
对于女性 (SEX=2):
FFMCalFemale <- function(WEIGHT, BMI) {
FFM = 9270*WEIGHT/(8780+244*BMI)
}
我想修改这个函数,让它检查 SEX(1,男性或 2 是女性),然后基于此计算 FFM 并为每个人应用该函数。能否请你帮忙?
提前致谢!
【问题讨论】:
-
你想要sql中的答案吗?我不太确定我需要用什么语言来写它
-
@Alex 我不确定你所说的 sql 是什么意思。答案将是一个数字。我想在名为 (FFM) 的数据集中添加一个新列,其中包含分析器。与每个人的 BMI 列的样式相同。
-
你的代码是什么语言的?
-
你的女性公式有问题:> FMCalFemale(80, 30) ans:[1] 84.17707 。 FFM 怎么可能超过 WEIGHT? (虽然这不是 R 语言问题)
-
@rnso 你是对的 =) 我错过了等式中的一些内容。它应该是 FFM=9270*WT/(8780+244*BMI)。感谢您的关注:)