练习R:car包recode函数多分类变量的重新编码

雇员数据中,教育年限变量原本有10个水平,不长不短很难受,不利于有关统计结果解读。
我希望把它压缩一下,将原来的10个水平重新编码为4个水平。翻译为国内的意思就是,1初中及以下,2高中,3大学,4研究生及以上,这样本身也好理解,统计结果解读更有利。
car包的recode函数在多分类变量重新编码方面优势明显,今天来练习一下。

01

基本语法

recode(x,recodes,as.factor.result,levels)
其中:
  • x为数值向量,字符向量或者factor 变量。

  • recode为设定重新编码规则的字符串。

  • as.factor.result为是否输出factor变量。若是则为TRUE,不是为FALSE。

  • levels为排序向量。指定新的编码分组的顺序(默认是按照分组名称排序)。

02

编码规则写法

recodes参数的值是一个字符串,字符串里面是以分号分隔的编码规则:
recodes=“规则1;规则2…”
每一个编码规则的格式为旧码列表=新码,“旧码列表”部分可用lo代表旧码的最小值(low)、hi代表旧码的最大值(high)。
撰写规则如下:
1)旧码=新码 旧码只有单一数值。例如:“0=NA”表示将0改为NA。
2)旧码向量=新码 多个旧码改为一个新码。例如:“c(7,8,9)='high’”,将7,8,9改为high。
3)start:end=新码 有序数字改码。例如:“lo:19='C’”。
4)else=新码 所有其他情况。例如:“else=NA”。

03

具体案例写法

具体案例写法:
employee$educ <- recode( employee$educ, "8='1'; 12='2'; c(14,15,16)='3'; else='4'", as.factor = T, levels = c("1","2","3","4") )
现在做条图来看重新编码后的效果:
(0)

相关推荐

  • 【Wolfram 到底有多厉害】- 神奇代码系列 04

    书接上文: 原作者是Martin Büttner, 由知乎回答者 AlephAlpha 汉化翻译, 这里已或授权转发, 并且我再整理补充一点内容, 中文链接您可以在最下阅读原文找到链接. 另外,这里的 ...

  • R语言逻辑回归分析连续变量和分类变量之间的“相关性“

    原文链接:http://tecdat.cn/?p=18169 比如说分类变量为是否幸存.是因变量,连续变量为年龄.是自变量,这两者可以做相关分析吗?两者又是否可以做回归分析? 我们考虑泰坦尼克号数据集 ...

  • 练习R:factor函数为有序分类变量创建值标签

    因子factor包含两种可能,一是名义的无序分类变量,二是有序分类变量. 用R读取外部数据时,如果发现本应该是无序或有序分类的数据,那应当及时调整为factor类型,并且注意区分无序和有序. 另外,为 ...

  • 练习R:dplyr包arrange函数排序

    用r自带的鸢尾花iris数据集为例,我们只要前5行,新的myiris数据如下: 1.单个变量排序 按第1个指标升序 arrange(myiris,myiris[,1]) 按第一个指标的变量名称升序 a ...

  • 练习R语言:bruceR包Freq()函数频率百分比统计

    ‍‍ 对于已经习惯了SPSS输出规范统计表格的人士来说,R输出的文本结果怎么看也不入眼. 我想统计一下不同学历水平被试的样本数和占比.用Freq()函数. Freq(bankloan$教育) 频数结果 ...

  • 学习R:bruceR包EMMEANS()函数简单效应分析

    老师想考察不同文章类型(熟悉或不熟悉).不同生字密度(高中低)及二者的交互作用对阅读理解的影响.设计了一个测试,收集到一份符合方差分析要求的数据资料. R读取数据后,使用bruceR包执行双因素方差分 ...

  • 学习R:vcd包Kappa()函数实现一致性检验

    我需要引用一个案例,但是我的英语不太行,所以我就不翻译了,直接给案例背景的英文介绍.如下: Data from Hout et al. (1987) given by Agresti (1990) s ...

  • 这十个R语言包做出医学统计图,CNS都赞不绝口!

    解螺旋公众号·陪伴你科研的第2561天 承"包"你的R语言 R语言,之所以能成为统计学的"当红炸子鸡",因为它内置了海量统计函数,使用者可以利用其对数据进行快速 ...

  • R机器学习:基于树的分类算法的原理及实现

    基于决策数的分类方法是一种非常直观的,非常好解释的,初中生都可以看得懂的分类算法,所以今天就给大家写写这个简单实用的分类算法. 决策树的基本流程就是通过一系列只能回答是否的问题将数据进行分类,这种方法 ...

  • table函数:分类数据的频数与频率统计

    对于分类数据,通常我们是对其分类水平的频数.频率/百分比进行统计分析,R语言中的table()函数可以很方便的完成这一过程. 数据源 雇员数据employee 本号后台回复[雇员]下载数据,欢迎读者朋 ...