R中带函数的case_when是一种条件语句,用于根据不同的条件执行不同的操作。它可以替代传统的if-else语句,使代码更简洁、易读。
case_when的语法如下:
result <- case_when(
condition1 ~ value1,
condition2 ~ value2,
condition3 ~ value3,
...
TRUE ~ default_value
)
其中,condition1、condition2、condition3等是逻辑条件,value1、value2、value3等是对应条件为真时的返回值。TRUE是默认条件,如果所有条件都不满足,则返回default_value。
case_when的使用条件:
案例示例: 假设我们有一个数据框df,其中有一列age表示年龄,我们想根据年龄的不同范围给出不同的描述。我们可以使用case_when来实现:
library(dplyr)
df <- data.frame(age = c(18, 25, 35, 45, 55))
df <- df %>%
mutate(description = case_when(
age < 20 ~ "青少年",
age < 30 ~ "青年",
age < 40 ~ "中年",
age < 50 ~ "中老年",
TRUE ~ "老年"
))
print(df)
输出结果:
age description
1 18 青少年
2 25 青年
3 35 中年
4 45 中老年
5 55 老年
在这个案例中,我们根据不同的年龄范围给出了不同的描述,使用了case_when来实现。
推荐的腾讯云相关产品和产品介绍链接地址:
领取专属 10元无门槛券
手把手带您无忧上云