如何从python中的csv文件中删除特殊字符?

时间:2021-04-21 09:23:17

标签: python python-3.x csv encoding

嗨,我正在尝试从 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)

1 个答案:

答案 0 :(得分:0)

我不确定,但您可以尝试下面给出的 Code 代码段:-

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

<块引用>

了解更多关于 ISO-8859-1 Click here

# 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   -

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

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

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