Python 删除数据帧中的所有特殊字符
从熊猫数据框中删除所有特殊字符时遇到问题。 你能帮我吗 我试过这样的方法:Python 删除数据帧中的所有特殊字符,python,regex,pandas,replace,special-characters,Python,Regex,Pandas,Replace,Special Characters,从熊猫数据框中删除所有特殊字符时遇到问题。 你能帮我吗 我试过这样的方法: df = df.replace(r'\W+', '', regex=True) 因为我在最近的一篇文章中找到了它。 但是当我执行时,例如特殊字符“'”不会消失 我知道在PostgresSQL中有类似于[^\w]的东西来获取特定列表。python中是否有类似的功能 a) 只保留字母表 b) 只保留数字 c) 保留字母和数字 谢谢你的帮助 只要这样做: df = df.replace(r'[^0-9a-zA-Z ]', '
df = df.replace(r'\W+', '', regex=True)
因为我在最近的一篇文章中找到了它。
但是当我执行时,例如特殊字符“'”不会消失
我知道在PostgresSQL中有类似于[^\w]
的东西来获取特定列表。python中是否有类似的功能
a) 只保留字母表
b) 只保留数字
c) 保留字母和数字
谢谢你的帮助 只要这样做:
df = df.replace(r'[^0-9a-zA-Z ]', '', regex=True).replace("'", '')
[^0-9a-zA-Z]
匹配Unicode字母和数字,这将删除太多
使用
df=df.replace(r'[^\w\s]|",'',regex=True)
看
解释
--------------------------------------------------------------------------------
[^\w\s] any character except word characters (\p{L}, \p{N}, _)
and whitespace (\p{Z})
--------------------------------------------------------------------------------
| OR
--------------------------------------------------------------------------------
_ '_'
谢谢你的回答,但那没用。例如,“米格拉德巴赫”应该变成“米格拉德巴赫”。“'”是一个特殊字符吗?@Cvleupke奇怪,为什么?@Cvleupke是通过一个错误完成的?是否有一本字典可以让我查找[\W\uz]中包含哪些特殊字符?@Cvleupke我已经给出了我的答案,请再检查一遍“特殊字符”是什么意思
\w
和\w
处理的不仅仅是A-Z
(更不用说非英语字母)和数字的单词字符。奥雷利怎么样?还是挪威语?谢谢你@Ryszard