首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何将计数添加到一个字符串中,该字符串与R中数据框中它上面的行相同?

如何将计数添加到一个字符串中,该字符串与R中数据框中它上面的行相同?
EN

Stack Overflow用户
提问于 2019-04-25 03:50:08
回答 1查看 23关注 0票数 0

我在R的dataframe中有一列,其中每一行都包含一个字符串。但是,尽管它们都是有序的,但其中许多都是复制的,因此具有相同字符串的行将被分组在一起。我想创建一个向字符串添加计数的新列。

我对R比较陌生,不知道从哪里开始,所以任何建议都会有帮助。谢谢!

示例:

代码语言:javascript
复制
String

apple
apple
apple
orange
orange
banana
banana
banana
banana
banana

我希望第二列看起来像这样:

代码语言:javascript
复制
String-n

apple-1
apple-2
apple-3
orange-1
orange-2
banana-1
banana-2
banana-3
banana-4
banana-5
EN

回答 1

Stack Overflow用户

发布于 2019-04-25 03:54:57

下面是一个简单的dplyr解决方案:

代码语言:javascript
复制
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  
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55837559

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档