熊猫-替换/删除一列中每一行中另一列中的部分

时间:2018-09-06 14:04:08

标签: python pandas

我有2列-df [“ _ 1”]和df [“ _ 2”]。 df [“ _ 1”]:

1. ananas patrzy
2. socja lizmzwyci ęży

df [“ _ 2”]:

1. patrzy
2. ęży

我要做的是删除df_1中位于df_2相关行中的那些部分。所以结果应该像这样:

df [“ _ 3”]

1. ananas
2. socja lizmzwyci

我尝试过的事情:

1. df.apply(lambda x:  x["_1"].replace(x["_2"], ''),axis=1) # doesn't work
2. df["_1"].str.strip( df["_2"].str) # - tried also with rstrip - doesn't work either 

您有什么想法吗?

1 个答案:

答案 0 :(得分:0)

您需要的公式是:

df['_1'] = df.apply(lambda row: row['_1'].replace(row['_2'], ''), axis='columns')

要删除任何前导/后缀空格,请添加.str.strip()

df['_1'] = df.apply(lambda row: row['_1'].replace(row['_2'], ''), axis='columns').str.strip()