gpt4 book ai didi

python - 使用 Python 将字符串中的 int 值替换为列中的字母

转载 作者:行者123 更新时间:2023-12-02 16:15:39 26 4
gpt4 key购买 nike

我目前有一个 csv 文件。数据最初是从PDF导出的,对数据进行了进一步的分析,提取的数据中有某些行包含字母代替数字,

我需要变量的字母而不是数字。所以尝试用字母替换 int 值

例如下面的例子:

col_state

2567i
28981
2534s
0123o

在上表中,我正在寻找替换 (i=1, s=5, o=0)

预期输出:

col_state

25671
28981
25345
01230

到目前为止我尝试了什么:

import re
chars_to_remove = ['i', '1', 's', '5', '']
regular_expression = '[' + re.escape (''. join (chars_to_remove)) + ']'

df['col_state'].str.replace(regular_expression, '', regex=True)

print(df['HSN_Code'])

所以我不知道如何处理这个问题:(

最佳答案

你可以使用translate方法如下

import pandas as pd
data = pd.Series(["2567i","28981","2534s","0123o"])
t = str.maketrans("iso","150")
data = data.str.translate(t)
print(list(data))

输出

['25671', '28981', '25345', '01230']

说明:translate 在您需要使用其他单个字符替换单个字符时很有用,str.maketrans 在以 2-argument 形式使用时创建替换表 so i-th第一个参数的元素被替换为第二个参数的第 i 个元素(参数必须等长),然后可以在 translate 中使用。 translatestr 的方法,可以在没有 pandas 的情况下使用。

关于python - 使用 Python 将字符串中的 int 值替换为列中的字母,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66783661/

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