如何按严重程度排序分类字符串特征?
How to order categorical string features in order of severity?
如果我的数据集的特征之一是分类字符串的分数,例如:
Score
X1c
X3a
X1a
X2b
X4
X1a
X1b
X4
其中 X1a
最弱,其次是 X1b, X1c, X2a, X2b ...X4
,X4
最强,我如何将其编码为整数,以便 X1a
可以是最低的整数X4
是最高的整数。我正在寻找使用随机森林分类器。此外,训练集是一个单独的数据集,因此应为新数据集保留此编码。
您可以尝试使用排名:
df['Score_int'] = df.Score.rank(method='dense')
输出:
Score Score_int
0 X1c 3.0
1 X3a 5.0
2 X1a 1.0
3 X2b 4.0
4 X4 6.0
5 X1a 1.0
6 X1b 2.0
7 X4 6.0
如果我的数据集的特征之一是分类字符串的分数,例如:
Score
X1c
X3a
X1a
X2b
X4
X1a
X1b
X4
其中 X1a
最弱,其次是 X1b, X1c, X2a, X2b ...X4
,X4
最强,我如何将其编码为整数,以便 X1a
可以是最低的整数X4
是最高的整数。我正在寻找使用随机森林分类器。此外,训练集是一个单独的数据集,因此应为新数据集保留此编码。
您可以尝试使用排名:
df['Score_int'] = df.Score.rank(method='dense')
输出:
Score Score_int
0 X1c 3.0
1 X3a 5.0
2 X1a 1.0
3 X2b 4.0
4 X4 6.0
5 X1a 1.0
6 X1b 2.0
7 X4 6.0