Python 基于其他列值将dataframe函数应用于列字符串
我想从列“A”中删除列“B”中字符串的所有实例,如下所示:Python 基于其他列值将dataframe函数应用于列字符串,python,pandas,Python,Pandas,我想从列“A”中删除列“B”中字符串的所有实例,如下所示: col A col B col C 1999 toyota camry camry 1999 toyota 2003 nissan pulsar pulsar 20013 nissan 我将如何使用熊猫来实现这一点?如果它是固定值(不依赖于其他列),我将使用: df['col C'] = df['col A'].str.replace('value-to-replace'
col A col B col C
1999 toyota camry camry 1999 toyota
2003 nissan pulsar pulsar 20013 nissan
我将如何使用熊猫来实现这一点?如果它是固定值(不依赖于其他列),我将使用:
df['col C'] = df['col A'].str.replace('value-to-replace','')
假设您有一个数据帧:
df
col A col B
0 1999 toyota camry camry
1 2003 nissan pulsar pulsar
然后,您可以按照以下步骤进行操作:
df['col C'] = [el[0].replace(el[1],'') for el in zip(df['col A'],df['col B'])]
df
col A col B col C
0 1999 toyota camry camry 1999 toyota
1 2003 nissan pulsar pulsar 2003 nissan
给定一个
数据帧
:
df = pd.DataFrame(
{
'A': ['1999 toyota camry', '2003 nissan pulsar'],
'B': ['camry', 'pulsar']
}
)
您可以在行轴上方执行替换:
df['C'] = df.apply(lambda L: L.A.replace(L.B, ''), axis=1)
这将为您提供:
A B C
0 1999 toyota camry camry 1999 toyota
1 2003 nissan pulsar pulsar 2003 nissan