gpt4 book ai didi

python - 动态删除单词的一部分

转载 作者:太空宇宙 更新时间:2023-11-04 02:03:01 25 4
gpt4 key购买 nike

我的单词由两部分组成 xy 其中 x 可以取很多值 & y 可以是空白,也可以采用固定数量的值。

x 就像:Apple, Banana, Mango, .... 更多

y 就像:Buy, Sell, Good

单词是:AppleBuy、BananaGood、Mango、MangoSell

输入df

Name
AppleBuy
BananaGood
Mango
MangoSell
Apple Buy

预期的 DF

Name
Apple
Banana
Mango
Mango
Apple

代码:

df['Name'] = df['Name'].str.replace('AppleBuy','Apple').str.replace('BananaGood','Banana')

问题

上面的代码工作正常,但问题是如果明天有一个新的 x 出现,上面的代码就会失败。

我可以有一些动态的东西来获得预期的输出,而不管 x 的值如何。

最佳答案

使用Series.str.replaceSeries.str.extract :

y = ['Buy','Sell','Good']
df['Name'] = df['Name'].str.replace('|'.join(y), '').str.strip()
print (df)
Name
0 Apple
1 Banana
2 Mango
3 Mango

或者:

x = ['Apple','Banana','Mango']
df['Name'] = df['Name'].str.extract('(' + '|'.join(x) + ')', expand=False)

print (df)
Name
0 Apple
1 Banana
2 Mango
3 Mango

如果想要带有大写分隔符的值:

df['Name'] = df['Name'].str.extract('([A-Z][a-z]*)')

print (df)
Name
0 Apple
1 Banana
2 Mango
3 Mango

关于python - 动态删除单词的一部分,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55352070/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com