我有以下数据集:
a_df = pd.DataFrame({'id':[1,2,3,4,5],'text':['This was fuuuuun','aaaawesome','Hiiigh altitude','Oops','See you']})
a_df
id text
0 1 This was fuuuuun
1 2 aaaawesome
2 3 Hiiigh altitude
3 4 Oops
4 5 See you
有些单词拼错了。一个适用的规则是,如果我看到三个或更多元音或辅音,那么我可以以某种方式确定有一个拼写错误的单词,所以我用''替换那个重复。所以我试过这个:
a_df['corrected_text'] = a_df['text'].str.replace(r'([a-zA-Z])\\3+','')
但是没有任何变化。我的逻辑是尝试捕捉重复的字母,但我一定是做错了什么。请,任何帮助将不胜感激。
最佳答案
您可以使用
a_df['text'] = a_df['text'].str.replace(r'([a-zA-Z])\1{2,}', r'\1', regex=True)
细节:([a-zA-Z])
- 捕获 ID 为 1 的组 \1{2,}
- 组 1 值(\1
是对组 1 值的替换反向引用,确保在 raww 字符串文字中使用它,否则你会双反斜杠)。 关于python - Pandas 单词中重复的元音和辅音,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68673931/