pandas 正则文本替换
时间: 2023-10-14 07:30:38 浏览: 94
在 Pandas 中,可以使用 `str.replace()` 函数来进行正则文本替换。它的用法如下:
```python
df['column_name'] = df['column_name'].str.replace('regex_pattern', 'replacement_string')
```
其中,`column_name` 是你要替换的列名,`regex_pattern` 是你的正则表达式模式,`replacement_string` 是你要替换成的字符串。
例如,我们有一个包含邮件地址的 Pandas 数据框:
```python
import pandas as pd
data = {'Email': ['johndoe@gmail.com', 'janedoe@yahoo.com', 'bobsmith@hotmail.com']}
df = pd.DataFrame(data)
```
我们想把所有邮件地址的域名替换成 `example.com`,可以使用以下代码:
```python
df['Email'] = df['Email'].str.replace('@[a-zA-Z\.]+$', '@example.com')
```
这里的正则表达式模式 `@[a-zA-Z\.]+$` 匹配 `@` 后面跟着一个或多个字母或点号,直到行尾。替换成的字符串是 `@example.com`。
执行以上代码后,`df` 数据框的内容如下:
```
Email
0 johndoe@example.com
1 janedoe@example.com
2 bobsmith@example.com
```
阅读全文