我想从“A”列中删除“B”列中字符串的所有实例,如下所示:

col A                 col B    col C
1999 toyota camry     camry    1999 toyota
2003 nissan pulsar    pulsar   20013 nissan

我将如何使用 Pandas 来做到这一点?如果它是一个固定值(不依赖于另一列),我将使用:
df['col C'] = df['col A'].str.replace('value-to-replace','')

最佳答案

给出的DataFrame为:

df = pd.DataFrame(
    {
        'A': ['1999 toyota camry', '2003 nissan pulsar'],
        'B': ['camry', 'pulsar']
    }
)

您可以在行轴上 df.apply 并执行替换:
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

关于python - Pandas数据框基于其他列值将功能应用于列字符串,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/36383821/

10-12 21:16