pandas怎樣處理中文?
01-22
csv文件中有大量中文,怎樣在pandas裡面顯示呢?現在看起來都是亂碼。謝謝!
pd.read_csv("example.csv",encoding="gb2312")
補充下:import pandas as pddf = pd.read_csv("example.csv",encoding="gb2312") 這樣基本能保證pandas讀取中文後不亂嗎,最近遇到還有例外的情況,用encoding = 『gb18030』 就能解決。首先 python文件開始 添加 一行 #-*- coding=utf-8 -*-
然後調用的時候 pd.read_csv(csvname,encoding="gb2312")然後看看你的python是保存為什麼編碼的, 推薦用notepad++打開,然後轉化為utf-8 無BOM格式的。 這樣無論在liunx還是window都能保證無亂碼。TextReader中文路徑問題 (Bug with Chinese characters in file path) · Issue #3634 · pandas-dev/pandas
如果是中文路徑,可以嘗試如上的skipfoot或者engine=『python』,如下:df = pd.read_csv(path,encoding = "gbk", engine="python")import pandas as pd
df = pd.read_csv("001.csv",encoding="gbk")
# goodluck
如果是你自己輸入的中文,有一個簡單的辦法,就是在字元串前面加個u,例如「這是中文」→u「這是中文」。如果是從別處得到的中文,例如某個文本文件中,需要知道這個文件的編碼方式,再轉碼(就是encode和decode)。但實際上要知道文件的編碼方式不太方便。你可以考慮使用codecs這個庫,在打開這個文件的時候進行轉碼。用法:codecs.open("file.txt","r","utf-8")。
希望可以幫到你。
import pandas as pd
datatrain = pd.read_csv("news.allsites.010805.txt", encoding = "gb18030")Try this剛剛解決了這個問題。如果題主發現樓上的方法都不行的話,有可能是搭建的編程環境的問題。如果題主用的是mac,可以在mac的終端里輸入pythonimport pandas如果提示錯誤ValueError: unknown locale: UTF-8
則打開你的bash.profile 輸入
export LANG="en_US.UTF-8" export LC_COLLATE="en_US.UTF-8" export LC_CTYPE="en_US.UTF-8" export LC_MESSAGES="en_US.UTF-8" export LC_MONETARY="en_US.UTF-8" export LC_NUMERIC="en_US.UTF-8" export LC_TIME="en_US.UTF-8" export LC_ALL=就可以了pandas 讀入 csv 數據的時候,可以試試
data = pd.read_csv( path , encoding = "gb18030")
對data的數據列進行操作的時候,比如
data_df = data.drop([ u"name" ])
就是再在列名前面加一個u,來代表中文
有些從網站導出的CSV文件,不知道編碼,但Excel可以導入數據。否則打開都是?"×¢òa:·¢???°£???×D??o?? 或者 ??ID/???ID
codecs.open("file.txt","r","utf-8")的方法還是不行呀,誰有好方法嗎
csv為utf-8編碼即可讀入以及正常顯示
推薦閱讀:
※哪個網站可以找到本年度的各項經濟數據?
※計算機專業學生如何在金融行業和數據挖掘之間做出抉擇?
※怎樣理解"curse of dimensionality"?
※大數據賺錢真的有那麼誇張?!?
※廣告演算法工程師的核心競爭力是什麼?
TAG:數據挖掘 |