[英]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.