首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >R将具有相反值和NA值的两列合并为一列,并删除现有的

R将具有相反值和NA值的两列合并为一列,并删除现有的
EN

Stack Overflow用户
提问于 2022-11-01 19:38:33
回答 1查看 23关注 0票数 1

我有一个像这样的数据文件:

代码语言:javascript
复制
structure(list(RFM_Score_Meaning.x = c("Dropped", "Dropped", 
"Dropped", "Dropped", "Dropped", "Dropped", "Dropped", NA, NA, 
NA, NA, NA, NA, NA, NA, NA), RFM_Score_Meaning.y = c(NA, NA, 
NA, NA, NA, NA, NA, "Need Encouragement", "Need Encouragement", 
"Need Encouragement", "Need Encouragement", "Need Encouragement", 
"Need Encouragement", "Need Encouragement", "Need Encouragement", 
"Need Encouragement")), row.names = c(NA, -16L), class = c("tidytable", 
"data.table", "data.frame"), .internal.selfref = <pointer: 0x000002470fabbfe0>)


RFM_Score_Meaning.x
<chr>
RFM_Score_Meaning.y
<chr>
Dropped NA          
Dropped NA          
Dropped NA          
Dropped NA          
Dropped NA          
Dropped NA          
Dropped NA          
NA  Need Encouragement          
NA  Need Encouragement          
NA  Need Encouragement

此数据为两列。第一列中NA的位置在第二列中有值,反之亦然。

我如何摆脱这两列,而不是有一个列,它有所有的值,没有任何NA值?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-11-01 19:42:06

我们可以用coalesce

代码语言:javascript
复制
library(dplyr)
df %>% 
  transmute(RFM_Score_Meaning = coalesce(RFM_Score_Meaning.x, RFM_Score_Meaning.y))
代码语言:javascript
复制
     RFM_Score_Meaning
 1:            Dropped
 2:            Dropped
 3:            Dropped
 4:            Dropped
 5:            Dropped
 6:            Dropped
 7:            Dropped
 8: Need Encouragement
 9: Need Encouragement
10: Need Encouragement
11: Need Encouragement
12: Need Encouragement
13: Need Encouragement
14: Need Encouragement
15: Need Encouragement
16: Need Encouragement
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/74280998

复制
相关文章

相似问题

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