import pandas as pd
import numpy as np
data = {'Name':['Tom', 'Tom', 'Jack', 'Terry'], 'Age':[20, 21, 19, 18]}
df = pd.DataFrame(data)
Run Code Online (Sandbox Code Playgroud)
假设我有一个看起来像这样的数据框。我想弄清楚如何检查 Name 列的值“Tom”,如果我第一次找到它,我用值“FirstTom”替换它,第二次出现时我用值“SecondTom”替换它. 你如何做到这一点?我之前使用过 replace 方法,但仅用于用单个值替换所有 Toms。我不想在值的末尾添加 1,而是将字符串完全更改为其他内容。
编辑:
如果 df 看起来更像下面这样,我们将如何检查第一列和第二列中的 Tom,然后将第一个实例替换为 FirstTom,将第二个实例替换为 SecondTom
data = {'Name':['Tom', 'Jerry', 'Jack', 'Terry'], 'OtherName':[Tom, John, Bob,Steve]}
我正在尝试删除电话号码中的特殊字符。特别是括号。当我只用一个括号运行它时,它工作正常,但是每当我尝试添加第二个字符串来替换它时,它只会执行第一个。这就是我正在使用的。
df['phoneNumber'] = df['phoneNumber'].str.replace({'(':'',')':''}), regex=True)
Run Code Online (Sandbox Code Playgroud)