参见下面的示例,我需要为每个ID * Value创建一个名为N_Count的新列。搜索但没有好运。
ID Value Count N_Count
1 a 2 1
1 a 2 2
1 b 1 1
2 a 2 1
2 a 2 2
3 a 1 3
3 b 3 1
3 b 3 2
3 b 3 3
答案 0 :(得分:0)
一种可能的解决方案可以是:
library(dplyr)
df %>%
group_by(ID, Value) %>%
mutate(n_Count = row_number())
# # A tibble: 9 x 4
# # Groups: ID, Value [5]
# ID Value Count n_Count
# <int> <chr> <int> <int>
# 1 1 a 2 1
# 2 1 a 2 2
# 3 1 b 1 1
# 4 2 a 2 1
# 5 2 a 2 2
# 6 3 a 1 1
# 7 3 b 3 1
# 8 3 b 3 2
# 9 3 b 3 3
数据强>
df <- read.table(text =
"ID Value Count
1 a 2
1 a 2
1 b 1
2 a 2
2 a 2
3 a 1
3 b 3
3 b 3
3 b 3",
header = TRUE, stringsAsFactors = FALSE)