使用映射将数据帧从数字转换为字符串

2024-06-09 09:59:51 发布

您现在位置:Python中文网/ 问答频道 /正文

通过映射将数据帧从字符串转换为数字(作为ID),这样我就可以在机器学习作业(需要数字值进行培训)之后将数字值映射回字符串

我的数据中有两列框架:-你知道吗

  1. Repository Name(需要转换的字符串)
  2. Number of Stars(数值,因此无需执行任何操作)

我想将字符串转换为ID,并需要映射这些ID以在将来使用它。你知道吗

注意:我的字符串是freecodecamp之类的词,而不是字符串中的整数值。你知道吗


Tags: of数据字符串name机器框架idnumber
2条回答

可以使用ord()在python中进行这些转换。例如,要将name转换为ASCII字符码,可以使用以下循环。你知道吗

name = "John"
nameascii = []

for c in name:
    nameascii.append(ord(c))

print(nameascii)

要转换回字符,请使用char()。你知道吗

但是,如果您的模型是使用张量流构建的,tf.string_to_number函数可能更好(更快),因为转换可以并发进行,而上面的循环将按顺序运行。你知道吗

def get_metadata(df, key, val):
    #create a new column with index 
    df['index'] = df.index
    if key == "Repository Name":
        return {str(row[key]): row[val] for _, row in df.iterrows()}
    else:
        return {row[key]: row[val] for _, row in df.iterrows()}

emb2idx = get_metadata(dataframe, "index", "Repository Name")

您将得到一个索引(ID)和字符串(存储库名称)的字典,以便将来映射。你知道吗

相关问题 更多 >