我有一个这样的数据集-基本上我有两组患者:
df <- structure(list(group = c(1, 1, 1, 2, 2, 2, 2), age = c(45, 67,
43, 23, 78, 87, 12)), class = c("tbl_df", "tbl", "data.frame"
), row.names = c(NA, -7L))
这是我写的:
formula <- function(x,y,z,t){
(x - y) / sqrt((z^2 + t^2)/2)
}
现在,我必须手动编写函数的所有四个元素。formula(x,y,z,t)
但是,我想以这种方式转换这个函数:
x <- mean age of group 1
y <- mean age of group 2
z <- standard deviation (of age) in group 1
t <- standard deviation (of age) in group 2
这样我就可以简单地写一个类似formula(df$age, df$group)
的东西,它会自动计算出正确组的均值和标准差,并使用公式。
我是新的编写函数,所以请帮助
1条答案
按热度按时间xv8emn3q1#
选择
x
的值,这些值属于第一个包含x[group == 1]
的组,并对组2执行相同的操作。然后使用你的公式: