如何使用dplyr获取R语言某一列的所有分类响应值列表
R语言dplyr场景下列出单列所有响应值的实现方法
问题原因说明
summary()函数统计因子/字符类型列时,默认仅展示频次最高的前7个分类,剩余分类统一合并为*(Other)*项,因此无法查看全部分类内容。
推荐实现方案
方法1:使用dplyr内置函数(最适配dplyr处理流程)
- 仅查看列的全部唯一响应值:
# 替换df为你的数据框名,target_col为目标列名 distinct(df, target_col) - 查看全部唯一响应值+对应出现频次(支持按频次排序):
# sort=TRUE表示按频次从高到低排序 count(df, target_col, sort = TRUE)
方法2:调整summary()参数直接输出全部分类
将maxsum参数设置为大于目标列唯一值总数的数值,即可避免生成*(Other)*项:
summary(df$target_col, maxsum = 100)
方法3:基础R函数实现
- 仅查看所有唯一值:
unique(df$target_col) - 查看所有唯一值+对应出现频次(默认展示NA值):
table(df$target_col, useNA = "ifany")
内容的提问来源于stack exchange,提问作者Brennan
相关产品推荐
相关产品推荐

