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

问题描述 投票:0回答:1

问候

目前正在创建一个神经网络,并且需要正确地构建数据。对于其中一个数据列,需要将字符串数据转换为数字。唯一的问题是,每行中的字符串数据是示例QWERTGCD, AWERTKRD, TWERTKRR'etc。有超过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

谢谢

r neural-network dataset categorical-data
1个回答
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)

© www.soinside.com 2019 - 2024. All rights reserved.