首页 > 解决方案 > 将字符串标签转换为整数

问题描述

我有一个数据框形式的数据集,第一列是文本,第二列是作者。作者是分类任务的标签。我想将此列转换为数字。

我尝试使用如何将字符串标签转换为数值的以下代码

train['author'].apply(train['author'].index)

但它不起作用。输出是

Int64Index object is not callable

请你帮助我好吗?

标签: python

解决方案


IIUC,您正在尝试为每个作者创建数字类别。如果是这样,请尝试:

train["codes"] = train["author"].astype("category").cat.codes

如果您想将相同的代码应用于其他数据集,您可以执行以下操作:

mapper = train.set_index('author')["codes"].to_dict()
validation["codes"] = validation["author"].map(mapper)

推荐阅读