mutate und case_when 多个案例
mutate und case_when with multiple cases
我基本上想编写一个语法来获得 T 分数的一般比例。
要规范这些,有两个条件,性别和年龄,需要单独的 T-Score。
所以我的数据看起来像这样:
w <- factor(c("m", "w", "w", "m", "m", "w", "w", "w", "m", "m"))
x <- c(28, 18, 25, 29, 21, 19, 27, 26, 31, 22)
y <- c(80, 55, 74, 101, 84, 74, 65, 56, 88, 78)
z <- c(170, 174, 183, 190, 185, 178, 169, 163, 189, 184)
bsp1 <- data.frame(w, x, y, z)
colnames(bsp1) <- c("Geschlecht", "Alter", "xx", "yy")
rm(w, x, y, z)
bsp1
到目前为止,我已经创建了类似的东西,尽管在这个例子中还不完整。
bsp1 <- bsp1 %>%
mutate(xxx =
case_when(
Geschlecht = "m" & Alter > 18 & xx == 55 ~ "1",
Geschlecht = "m" & Alter > 18 & xx == 56 ~ "2",
Geschlecht = "m" & Alter > 18 & xx == TRUE ~ "3",
))
我似乎想不通,如何将这些多个条件组合到 case_when 函数中。另外,如果最后需要一个 TRUE 语句,它会去哪里?
我希望这是可以理解的,我想在这里做什么。
提前谢谢你。
您可能打算写:
library(dplyr)
bsp1 <- bsp1 %>%
mutate(xxx =
case_when(
Geschlecht == "m" & Alter > 18 & xx == 55 ~ 1,
Geschlecht == "m" & Alter > 18 & xx == 56 ~ 2,
TRUE ~ 3
))
我基本上想编写一个语法来获得 T 分数的一般比例。 要规范这些,有两个条件,性别和年龄,需要单独的 T-Score。
所以我的数据看起来像这样:
w <- factor(c("m", "w", "w", "m", "m", "w", "w", "w", "m", "m"))
x <- c(28, 18, 25, 29, 21, 19, 27, 26, 31, 22)
y <- c(80, 55, 74, 101, 84, 74, 65, 56, 88, 78)
z <- c(170, 174, 183, 190, 185, 178, 169, 163, 189, 184)
bsp1 <- data.frame(w, x, y, z)
colnames(bsp1) <- c("Geschlecht", "Alter", "xx", "yy")
rm(w, x, y, z)
bsp1
到目前为止,我已经创建了类似的东西,尽管在这个例子中还不完整。
bsp1 <- bsp1 %>%
mutate(xxx =
case_when(
Geschlecht = "m" & Alter > 18 & xx == 55 ~ "1",
Geschlecht = "m" & Alter > 18 & xx == 56 ~ "2",
Geschlecht = "m" & Alter > 18 & xx == TRUE ~ "3",
))
我似乎想不通,如何将这些多个条件组合到 case_when 函数中。另外,如果最后需要一个 TRUE 语句,它会去哪里?
我希望这是可以理解的,我想在这里做什么。 提前谢谢你。
您可能打算写:
library(dplyr)
bsp1 <- bsp1 %>%
mutate(xxx =
case_when(
Geschlecht == "m" & Alter > 18 & xx == 55 ~ 1,
Geschlecht == "m" & Alter > 18 & xx == 56 ~ 2,
TRUE ~ 3
))