基于正则表达式的另一个列值替换一个列值-Python

格梅里·格里高利

这是我的DataFrame的摘录

data = [
    ['Citroën Amillis', '20 Za Des Baliveaux - 77120 Amillis', '77120', 'ok'],
    ['Relat Paris 9e', 'Métro Opéra - 75009 Paris 9e', 'Paris', 'error'],
    ['Macif Avon', '49 Av Franklin Roosevelt - 77210 Avon', '77210', 'ok'],
    ['Atac La Chapelle-la-Reine', 'Za Rue De L\'avenir - 77760 La Chapelle-la-Reine', 'La', 'error'],
    ['Société Générale La Ferté-Gaucher', '42 Rue De Paris - 77320 La Ferté-Gaucher', 'La', 'error']
]

df = pd.DataFrame(data, columns=['nom_magasin', 'adresse', 'code_postal', 'is_code_postal'])

df

如您所见,我的数据框中存在错误。对于某些地址,尤其是在组成城市名称时(例如:“ La Chapelle-la-Reine”),“ code_postal”列是错误的。

我要执行的操作如下:如果“ is_code_postal”列为“错误”,则将“ code_postal”替换为出现在“ adresse”列中的邮政编码正则表达式。

我找不到解决方案。为此,我已经尝试过了df['is_code_postal'] = np.where(df.code_postal.str.match('^[a-zA-z]'), 'error', 'ok')起初,我正在考虑在同一功能内进行所有更改。但是我想念一些东西。

重要的是我的数据帧有点重(超过25万行),所以我想寻求一个有效的解决方案。

你们有什么主意吗?

gdnaes

您可以忽略code_postal并使用Quang中的代码直接从'adresse'中提取它:

df['code_postal']=df['adresse'].str.extract('(\d{5})')

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何用另一个表中的变量替换一个列变量(使用正则表达式)python,它甚至可能吗?

Python正则表达式查找一个或另一个

Python Regex:选择一个正则表达式或另一个

使用python正则表达式在另一个模式内编译模式

正则表达式提取整数或浮点值,后跟一个单位Python

Python解析表达式并替换为另一个表达式

根据R或python中的条件,从另一列列表中替换一个列列表中的值

Python:正则表达式搜索文件,并在下一行搜索另一个正则表达式

Pandas / Python:使用.replace()从另一个列值替换列值

如何使用 Pandas 数据框字段在 Python 中的另一个字段中使用正则表达式替换文本?

读取标题并将列值替换为 Python 中的另一个值

Python正则表达式检查某些字符中是否存在某些字符形成另一个

Python-基于另一个列的值访问列

python正则表达式用一个命令替换两种情况

根据使用正则表达式获得的匹配结果,替换另一列上的值(Python Pandas)

用另一个字符python正则表达式替换第一个和第三个匹配项

正则表达式/ Python:在一个符号之前找到所有内容(如果在另一个符号之后)

带有一个运算符或另一个运算符的Python正则表达式,但不能同时使用

使用正则表达式 python 从一个列表到另一个列表的单词匹配

根据另一个数据框python熊猫替换列值-更好的方法?

Python CSV搜索列,并使用for循环将值替换为另一个

Python正则表达式。在一个句子中找到一个句子

python中的正则表达式:将2个正则表达式组合为一个

Python 用另一个列表替换一个列表

python用另一个csv的相邻列数据替换一个csv中的列的相邻部分

Python Pandas:如何计算基于另一个列的值出现在列中的次数?

如何使用python中的正则表达式将子字符串替换为另一个包含该子字符串的字符串作为其中的一部分

Python Pandas根据另一个列中的总数从另一个dataFrame中选择值

python pandas:根据列表中列的另一个值设置列的值