pandas21讀csv檔案read_csv錯誤解決辦法7種(詳細 tcy)
阿新 • • 發佈:2018-12-29
pandas讀csv檔案錯誤解決辦法 2018/12/24
以下方法彙總網上資料,有些方法是使用python2.x;建議你升級到python3.x,能夠避免一些問題。
重點關注引數encoding,engine='python'
1.正確使用:
1.1.檔名含路徑中特殊符號: pd.read_csv(r'd:\bujiao.csv')#前加r os.getcwd() #獲得當前的工作路徑 pd.read_csv("bujiao.csv") #檔案存在當前的工作路徑的目錄內 1.2.簡體中文檔名: pd.read_csv(r'd:\明細.csv',encoding='gb2312')#gbk,gb18030 1.3.繁體字檔名: pd.read_csv(r'd:\河滘.csv',encoding='gbk') #gbk支援繁體中文 1.4.讀取中文名檔案或者在前面加u pd.read_csv(u'河滘.csv') data=pd.read_csv('F:\\資料來源\\清單.csv',engine='python') data=pd.read_csv(open('F:\\資料來源\\清單.csv'))#python3.7 1.5.讀取以0開頭資料出現數據缺失 pd.read_csv(r".c:\\test.csv" ,, converters = {u'code':str}) # 不加converters 引數'000539'讀出變成'539' df = pd.read_excel(os.getcwd() + os.sep + 'stock.xlsx',converters = {u'code':str}) 1.6.檔案中含中文字元 # 檢視本機器預設的encoding sys.getdefaultencoding()#‘utf-8’;新增支援中文的編碼 pd.read_csv('d:\\si\\a.csv',encoding='gb2312') 1.7.讀取指定資料型別 # df資料a,b,c分別為str,float,float df=pd.read_csv(output_file,encoding='gb2312',names=['a','b','c'],dtype={'b':np.folat64})
2.python字串前面加u,r,b的含義
u/U:表示unicode字串
# 適用任何字串,對字串進行unicode編碼。
# 中文一般新增, 否則一旦編碼轉換就會出現亂碼。
r/R:非轉義的原始字串
# 以r開頭的字元,常用於正則表示式,對應著re模組。
# python3.x默
3.注意:
1.讀取日期注意把日期列寬度,不夠的增加
2.python3支援中文檔名讀寫,所以可以python函式直接讀寫