[英]Pandas.read_csv() with special characters (accents) in column names �
我有一个csv
文件,其中包含一些带有列名称的数据:
我对第三个“IAS_lissé”有问题,它被pd.read_csv()
方法误解并返回为 。
那是什么性格?
因为它在我的烧瓶应用程序中产生了一个错误,有没有办法在不修改文件的情况下以其他方式读取该列?
In [1]: import pandas as pd
In [2]: pd.read_csv("Openhealth_S-Grippal.csv",delimiter=";").columns
Out[2]: Index([u'PERIODE', u'IAS_brut', u'IAS_liss�', u'Incidence_Sentinelles'], dtype='object')
我发现西班牙语也有同样的问题,用“latin1”编码解决了这个问题:
import pandas as pd
pd.read_csv("Openhealth_S-Grippal.csv",delimiter=";", encoding='latin1')
希望能帮助到你!
使用 utf-8 对我不起作用。 例如这段代码:
bla = pd.DataFrame(data = [1, 2])
bla.to_csv('funkyNamé , things.csv')
blabla = pd.read_csv('funkyNamé , things.csv', delimiter=";", encoding='utf-8')
blabla
最终返回:OSError: Initializing from file failed
我知道你说过你不想修改文件。 如果您指的是文件内容与文件名,我会将文件重命名为不带重音的名称,以新名称读取 csv 文件,然后将文件名重置为其原始名称。
originalfilepath = r'C:\Users\myself\\funkyNamé , things.csv'
originalfolder = r'C:\Users\myself'
os.rename(originalfilepath, originalFolder+"\\tempName.csv")
df = pd.read_csv(originalFolder+"\\tempName.csv", encoding='ISO-8859-1')
os.rename(originalFolder+"\\tempName.csv", originalfilepath)
, my apologies for not being helpful to you, and I hope this helps someone else.如果你的意思是“不修改文件,我很抱歉没有对你有帮助,我希望这能帮助别人。
尝试使用:
import pandas as pd
df = pd.read_csv('file_name.csv', encoding='utf-8-sig')
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.