gpt4 book ai didi

string - Python Pandas : How to replace string contain "?"

转载 作者:行者123 更新时间:2023-12-02 20:45:32 25 4
gpt4 key购买 nike

我有一个 Python 2.7 Pandas 数据框架,如下所示:

Id      Title             URL
Id-1 Bruce Almighty https://www.youtube.com/watch?v=5VGyTOGxyVA
Id-2 Superhero Movie https://www.youtube.com/watch?v=3BnXz-7-y-o
Id-3 Taken https://www.youtube.com/watch?v=vjbfiOERDYs
Id-4 Forest Gump https://www.youtube.com/watch?v=eJFkCJySHdY&t=524s

我想将字符串“?v=”的一部分替换为其他字符串,例如“URL”列中的“ppp”。我尝试使用普通替换命令:

df['URL'] = df['URL'].str.replace('?v=', 'ppp')

但出现以下错误。

error: nothing to repeat.

当我尝试仅替换一个字符时,例如:

df['URL'] = df['URL'].str.replace('?', 'ppp')

效果很好。为什么当我尝试替换字符串“?v =”时它不起作用?

最佳答案

您需要通过\转义:

df['URL'] = df['URL'].str.replace('\?v=', 'ppp')
print (df)
Id Title URL
0 Id-1 Bruce Almighty https://www.youtube.com/watchppp5VGyTOGxyVA
1 Id-2 Superhero Movie https://www.youtube.com/watchppp3BnXz-7-y-o
2 Id-3 Taken https://www.youtube.com/watchpppvjbfiOERDYs
3 Id-4 Forest Gump https://www.youtube.com/watchpppeJFkCJySHdY&t=...

另一个解决方案 Series.replace :

df['URL'] = df['URL'].replace('\?v=', 'ppp', regex=True)
print (df)
Id Title URL
0 Id-1 Bruce Almighty https://www.youtube.com/watchppp5VGyTOGxyVA
1 Id-2 Superhero Movie https://www.youtube.com/watchppp3BnXz-7-y-o
2 Id-3 Taken https://www.youtube.com/watchpppvjbfiOERDYs
3 Id-4 Forest Gump https://www.youtube.com/watchpppeJFkCJySHdY&t=...

关于string - Python Pandas : How to replace string contain "?",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44585636/

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