R语言:基于两列用case_when新增分类列报错求助
修正case_when语法错误并实现消息分类统计
错误原因
你的代码误用了逗号分隔条件与结果,case_when要求每个判断分支必须是**条件 ~ 结果**的双面对象格式,不能用逗号拆分,且代码中存在多余逗号,这直接导致了语法报错。
正确代码实现
方法1:修正case_when写法
intra_inter_msg <- DF %>% mutate(inter_intra = case_when( sender_department == receiver_department ~ "intra", sender_department != receiver_department ~ "inter" ))
方法2:用if_else简化(更高效)
因为两个条件互斥且覆盖所有场景,用if_else会更简洁:
intra_inter_msg <- DF %>% mutate(inter_intra = if_else(sender_department == receiver_department, "intra", "inter"))
统计消息占比
分类完成后,可通过以下代码统计周期内部门内/间消息的数量及占比:
msg_stat <- intra_inter_msg %>% count(inter_intra) %>% mutate(占比 = n / sum(n))
内容的提问来源于stack exchange,提问作者FASASI Kamorudeen
相关产品推荐
相关产品推荐

