在dplyr中,可以使用case_when()函数根据另一个列的值进行赋值。case_when()函数可以根据条件逐行评估,并根据条件的结果进行赋值。
下面是使用case_when()函数的示例代码:
library(dplyr)
# 创建一个示例数据框
df <- data.frame(
x = c(1, 2, 3, 4, 5),
y = c("A", "B", "C", "D", "E")
)
# 使用case_when()根据y列的值进行赋值
df <- df %>%
mutate(z = case_when(
y == "A" ~ "Category 1",
y == "B" ~ "Category 2",
y == "C" ~ "Category 3",
TRUE ~ "Other"
))
# 打印结果
print(df)
在上面的示例中,我们创建了一个包含两列的数据框df,其中列x包含数字,列y包含字符。然后,我们使用case_when()函数根据y列的值进行赋值,将满足条件的值映射到新的列z中。在这个例子中,如果y的值是"A",则z的值为"Category 1";如果y的值是"B",则z的值为"Category 2";如果y的值是"C",则z的值为"Category 3";否则,z的值为"Other"。
这是一个简单的示例,你可以根据实际需求添加更多的条件和赋值操作。同时,你也可以使用其他dplyr函数来进行数据处理和转换。
腾讯云相关产品和产品介绍链接地址:
领取专属 10元无门槛券
手把手带您无忧上云