[数析学院] 数据框中的数据转化与重编码

问题:在R中,如何对数据进行重新编码抑或是运用已有的数据计算得到新的数据列?

指南 

在下面的例子中我们将使用这组数据:

[数析学院] 数据框中的数据转化与重编码_第1张图片

类别型变量的重编码

实现这一过程的最简单方法是直接调用plyr包中的revalue()函数和mapvalues()函数,这两个函数将会之间将M和F分别转换为1和2,并将转换结果置于新的一列。需要注意的是,这些函数在使用过程中会保留数据的格式:如果输入为因素,那么函数的输出也是因素;如果输入为向量,那么函数的输出也是向量。

[数析学院] 数据框中的数据转化与重编码_第2张图片

如果你不习惯使用plyr包,那么你也可以使用下列R内置函数:

[数析学院] 数据框中的数据转化与重编码_第3张图片

另一个方法是使用match函数:

[数析学院] 数据框中的数据转化与重编码_第4张图片

将连续型变量重编码为类别型变量

比如我们将变量值中那些<7的记为“low”,而>=7的则记为“high”:

[数析学院] 数据框中的数据转化与重编码_第5张图片

在知道确定的分类边界的情况下,我们也可以使用cut函数来获得想要的结果,如下所示:

[数析学院] 数据框中的数据转化与重编码_第6张图片

在默认的情况下,cut函数中的区间设置为左开右闭,例如(7,9]。如果你想要将它调整为左闭右开的[7,9),请设置函数参数right=FALSE。

计算新的连续型变量

这很简单,例如我们想要增加新的一列,其内容为已有的三列数据之和,我们可以这么做:

[数析学院] 数据框中的数据转化与重编码_第7张图片

[数析学院]致力为你打造最精要的课程:

[数析学院] 数据框中的数据转化与重编码_第8张图片

你可能感兴趣的:([数析学院] 数据框中的数据转化与重编码)