首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >重复R中的特定行

重复R中的特定行
EN

Stack Overflow用户
提问于 2021-10-27 06:18:41
回答 1查看 88关注 0票数 0

我想重复第一列中有“肺气肿/慢性支气管炎”的每一行。对于每一次这样的重复,我希望在第二列中对两行中的一行使用“肺气肿”,在第二列中对另一行使用“慢性支气管炎”。我不确定我是否解释得很好--很抱歉造成了混乱。

现在是这样的:第一列例子:皮肤癌、直肠癌、肺气肿/慢性支气管炎

第2列示例:皮肤肿瘤直肠肿瘤NA

这就是我想要的样子:第一列例子:皮肤癌、直肠癌、肺气肿、慢性支气管炎

第2栏举例:皮肤肿瘤、直肠肿瘤、肺气肿、慢性支气管炎

EN

回答 1

Stack Overflow用户

发布于 2021-10-27 22:32:29

从描述中不能完全清楚,但这可能会对您有所帮助。

比方说,你有一个看起来像这样的data.frame:

代码语言:javascript
复制
                          col1             col2
1                  skin cancer   Skin Neoplasms
2                rectal cancer Rectal Neoplasms
3 emphysema/chronic bronchitis             <NA>

并且您希望拆分带有斜杠(/)的条目,例如肺气肿和慢性支气管炎之间的条目。

您可以在tidyr中使用separate_rows,并使用'/‘作为分隔符。您还可以包含coalesce以使用条目更新第2列(替换缺少的数据),就像第1列一样。据我所知,这与预期的输出相匹配。

代码语言:javascript
复制
library(tidyverse)

df %>%
  separate_rows(col1, sep = "/") %>%
  mutate(col2 = coalesce(col1))

输出

代码语言:javascript
复制
  col1               col2              
  <chr>              <chr>             
1 skin cancer        skin cancer       
2 rectal cancer      rectal cancer     
3 emphysema          emphysema         
4 chronic bronchitis chronic bronchitis
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/69733695

复制
相关文章

相似问题

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