首页 > 解决方案 > 如何从python中的csv文件中删除特殊字符?

问题描述

您好我正在尝试从 csv 文件中删除特殊字符,但没有得到满意的结果。你能帮我怎么做吗?

例子:

ÃœþÑÂúòð
Óþрþô áðýúт-ßõтõрñурó

我得到的这些特殊字符之王。

我正在使用下面的 python 代码保存文件-

df = pd.read_csv(r"D:\Users\SPate233\Documents\cleanData-JnJv2.csv", low_memory=False)
df.to_csv(r"D:\Users\SPate233\Documents\cleanData-JnJv2_new.csv", encoding='utf-8-sig', index=False)

标签: pythonpython-3.xcsvencoding

解决方案


我不确定,但你可以试试Code下面给出的片段:-

基本上,我DataFrame从你的Data. CSV因此,对于使用特殊字符上传。encoding指定类型很重要。所以,我使用了ISO-8859-1这种encoding技术。因为ISO-8859-1是一系列单字节编码方案,用于表示可以在 127 到 255 范围内表示的字母表。

了解更多关于ISO-8859-1 点击这里

# Import all the important Libraries
import pandas as pd

# Read 'Data'
df = pd.read_csv('temp_data.csv', encoding = "ISO-8859-1")

# Print a few records of data with special characters
df
# Output of Above Cell:-
    Data
0   ÃœþÑÂúòð
1   Óþрþô áðýúт-ßõтõрñурó

看完之后DataFrame。我们可以前进,去除特殊字符的过程。code如下所述:-

# Removal of Special Characters
df['Data'] = df['Data'].map(str).apply(lambda x: x.encode('utf-8').decode('ascii', 'ignore'))

# Print Cleaned data
df
# Output of Above Cell:-
    Data
0   
1   -

如您所见,我们已删除所有特殊字符。因此,我们可以将其存储ResultCSV:-

# Store clean data into 'CSV' Format
df.to_csv(r'cleaned_temp_data.csv', encoding = 'utf-8-sig', index = False)

希望这个,解决方案可以帮助你。


推荐阅读