我在R的数据框中有一列,其中每一行都包含一个字符串。但是,尽管它们都是按顺序复制的,但其中许多仍被复制,因此具有相同字符串的行被分组在一起。我想创建一个新列,向该字符串添加计数。
我对R还是比较陌生,不知道从哪里开始,所以任何建议都会有所帮助。谢谢!
示例:
String
apple
apple
apple
orange
orange
banana
banana
banana
banana
banana
我希望第二列看起来像这样:
String-n
apple-1
apple-2
apple-3
orange-1
orange-2
banana-1
banana-2
banana-3
banana-4
banana-5
答案 0 :(得分:1)
这是一个简单的dplyr解决方案:
library(dplyr)
df %>%
group_by(String) %>%
mutate(`String-n` = paste0(String, "-", row_number())) %>%
ungroup()
## A tibble: 10 x 2
# String `String-n`
# <fct> <chr>
# 1 apple apple-1
# 2 apple apple-2
# 3 apple apple-3
# 4 orange orange-1
# 5 orange orange-2
# 6 banana banana-1
# 7 banana banana-2
# 8 banana banana-3
# 9 banana banana-4
#10 banana banana-5