使用dplyr库中的mutate()函数来实现,该函数可以用于添加新的列或修改现有的列。同时,使用group_by()函数来按组分组。
示例代码如下:
library(dplyr)
# 创建数据框
df <- data.frame(group = c("A", "A", "B", "B"),
prev_col = c(1, 2, NA, 4))
# 在现有数据框上添加新列
df2 <- df %>%
group_by(group) %>%
mutate(new_col = ifelse(!is.na(prev_col), prev_col + 1, NA))
在这个示例中,我们先给定一个数据框df,包含两列: “group”和“prev_col”。我们要创建一个名为“new_col”的新列,该列基于“prev_col”,如果“prev_col”列中的值不是缺失,则将其加1。如果列缺失,则使用NA。最后,按组分组。
最终的结果是一个新的数据框df2,其中包含“group”,“prev_col”和“new_col”三列。
上一篇:按组创建索引列
下一篇:按组创建新列的聚合函数