我想重复第一列中有“肺气肿/慢性支气管炎”的每一行。对于每一次这样的重复,我希望在第二列中对两行中的一行使用“肺气肿”,在第二列中对另一行使用“慢性支气管炎”。我不确定我是否解释得很好--很抱歉造成了混乱。
现在是这样的:第一列例子:皮肤癌、直肠癌、肺气肿/慢性支气管炎
第2列示例:皮肤肿瘤直肠肿瘤NA
这就是我想要的样子:第一列例子:皮肤癌、直肠癌、肺气肿、慢性支气管炎
第2栏举例:皮肤肿瘤、直肠肿瘤、肺气肿、慢性支气管炎
发布于 2021-10-27 22:32:29
从描述中不能完全清楚,但这可能会对您有所帮助。
比方说,你有一个看起来像这样的data.frame:
col1 col2
1 skin cancer Skin Neoplasms
2 rectal cancer Rectal Neoplasms
3 emphysema/chronic bronchitis <NA>并且您希望拆分带有斜杠(/)的条目,例如肺气肿和慢性支气管炎之间的条目。
您可以在tidyr中使用separate_rows,并使用'/‘作为分隔符。您还可以包含coalesce以使用条目更新第2列(替换缺少的数据),就像第1列一样。据我所知,这与预期的输出相匹配。
library(tidyverse)
df %>%
separate_rows(col1, sep = "/") %>%
mutate(col2 = coalesce(col1))输出
col1 col2
<chr> <chr>
1 skin cancer skin cancer
2 rectal cancer rectal cancer
3 emphysema emphysema
4 chronic bronchitis chronic bronchitishttps://stackoverflow.com/questions/69733695
复制相似问题