【发布时间】:2020-09-15 14:38:24
【问题描述】:
我对这一切还很陌生,所以提前道歉。
我有一个数据集 (csv)。一列包含带有整个句子的字符串。这些句子包含错误解释的 utf-8 字符,如 ’ 和表情符号,如 🥳。
所以数据框 (df) 看起来像这样:
date text
0 Jul 31 2020 it’s crazy. i hope post-covid we can get it done🥳
1 Jul 31 2020 just sayin’ ...
2 Jul 31 2020 nba to hold first games in 'bubble' amid pandemic
目标是对文本进行情感分析。
- 是否最好删除所有特殊字符(如
, . ( ) [ ] + | -)来进行情绪分析? - 如何做到这一点以及如何删除错误解释的 utf-8 字符,例如
’?
我自己尝试过使用我找到的一些代码并将其更改为我的问题。
这导致这段代码似乎什么也没做。 ’ 等字符仍在文本中。
spec_chars = ["…","🥳"]
for char in spec_chars:
df['text'] = df['text'].str.replace(char, ' ')
我有点迷路了。 感谢您的帮助!
【问题讨论】:
-
我只是在使用 df = pd.read_csv('xxx.csv') 也尝试了 df = pd.read_csv('xxx.csv', encoding = 'utf8') 没有' t改变任何东西
-
你能不能试着把它改成
read_csv('xxx.csv', encoding='windows-1252')——看起来不是UTF8。 -
@jsmart 然后我得到这个 UnicodeDecodeError: 'charmap' codec can't decode byte 0x9d in position 8303: character maps to
-
此链接可能会有所帮助:stackoverflow.com/questions/45749093/… -- 解析字符编码可能涉及大量试验和错误,抱歉没有更好的答案
-
chardet 可能有帮助:pypi.org/project/chardet(在之前评论的 SO 文章中提到过)
标签: python pandas data-cleaning