如何从CSV文件中删除非英文文本数据

2024-06-09 01:22:08 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在清理从多个url中潦草写下的文本数据。如何从csv文件中的数据中删除非英语单词/符号?在

我保存了数据,并使用以下代码读取数据:

要将数据保存为csv文件:

df.to_csv("blogdata.csv", encoding = "utf-8")

保存数据后,csv文件显示如下,包括非英语单词和符号(例如,'\n\t\t\t',m€™等等):

enter image description here

这些符号在原始数据中没有显示,有些甚至出现在英文数据中。以第七排的“罗斯·帕克”为例。在

保存在csv文件中的数据是:['\n\t\t\t','It–eur™我该写一篇关于我们™在过去的几个月里。我们€™即将。。。在

其中,在从url中草草画出的原始数据中,显示如下:

enter image description here

有谁能解释一下为什么会发生这种情况,并帮助我解决这个问题并从文件中清除非英语数据吗?在

提前谢谢你!在


Tags: 文件csvto数据代码文本urldf
1条回答
网友
1楼 · 发布于 2024-06-09 01:22:08

它看起来像是引导错误:数据是正确的,但是您在一个工具中查看它,该工具配置或硬编码为将文本显示为拉丁语1(或Windows代码页1252?)即使你把它保存为UTF-8。在

一些工具-特别是在Windows上-会用UTF-8做一些异想天开的事情,而UTF-8没有BOM。如果不修改默认的文件,那么就让它的编码工具来替代它。在

换句话说,如果包含损坏数据的屏幕截图来自Excel,那么当它询问如何导入这个CSV文件时,您可能选择了dosoode页面(或者错误地标记为“ANSI”)而不是UTF-8。也许最好的解决办法是设计一个不涉及电子表格的工作流程。在

或者你使用了一个工具,它什么都没问你,试图“嗅探”数据来确定它的编码,但它猜错了。添加一个称为BOM的不可见字节序列(它是UTF-8所特有的)应该能让它猜对;但这是一种错误的行为——你不应该受制于它明显不完美的启发式。(另请参见"Bush hid the facts"了解相关报道。)

相关问题 更多 >