gpt4 book ai didi

Python - 如何将列映射到字母序列?

转载 作者:行者123 更新时间:2023-12-01 06:34:19 26 4
gpt4 key购买 nike

我在数据框中有一列,我想将其映射到一系列字母。

假设该列中有以下 50 个值:

import pandas as pd
import numpy as np

data = pd.DataFrame(np.arange(50))

现在我想创建一个新列,其中数字0映射到A,1映射到B等。我遵循this question中的方法,但是当映射到达字母 Z 时,它会转到一些非字母字符。这是映射代码:

data['new column'] = [chr(ord('a') + x).upper() for x in data.index]    

观察数字 26 及之后的数字被映射到非字母字符。我们如何创建一个映射函数,以便映射将数字 26 重新映射到 AA、27 到 AB、28 到 AC 等?

最佳答案

import pandas as pd
import numpy as np

data = pd.DataFrame(np.arange(50))

data["new column"] = [
chr(ord('a') + x//26 - 1).upper() + chr(ord('a') + x%26).upper() if x >= 26
else chr(ord('a') + x).upper()
for x in data.index
]

祝你好运

关于Python - 如何将列映射到字母序列?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59746899/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com