将多个分类变量转换为R中的因子

时间:2018-03-06 19:51:29

标签: r neural-network dataset categorical-data

致敬

目前正在创建一个神经网络,并且需要正确地构建数据。对于其中一个数据列,需要将字符串数据转换为数字。唯一的问题是,每行中的字符串数据是示例QWERTGCD, AWERTKRD, TWERTKRR'等。有超过1000行的行,每行都有相同或不同的字符串,如发布的示例所示。我不知道如何将多个字符串转换为此规模的分类数据。标签分区同样如此。

到目前为止,我从

开始

dataset$Box = as.numeric(factor(dataset$Box, levels = c(), labels = c()))

不确定我是否过度思考这一点,但我无法确定如何精确地输入关卡和表格而不费力地浏览数据,并自行输入。

以下是正在使用的数据示例。

B,11979,13236,1261,3,QWERTGCD,1 B,475514,476069,559,33,QWERTOOD,1 C,65534,65867,337,1,QWERAEER,1 C,73738,74657,923,2,AWERTWED,1

谢谢

1 个答案:

答案 0 :(得分:0)

如果没有可重复的示例,很难确切地知道您需要什么,但一般来说,R擅长的一件事是同时在整个列上运行操作。您只是将dataset中名为Box的列从字符串转换为数字,然后通过一个因子。 factor()会为您找到列中的所有唯一值。所以你不需要指定它们。

dataset$Box <- as.numeric(factor(dataset$Box))

将获取数据集中的Box列并将其从类character转换为类numeric,以字母数字顺序对Box中的字符值进行编号(除非您另行指定) )。它甚至可能已经是一个因素,具体取决于数据集的生成方式。您可以查看class(dataset$Box)。如果返回factor,则只需运行dataset$Box <- as.numeric(dataset$Box)