Dan*_*iel 5 python csv encoding pandas chinese-locale
我可以读取一个csv文件,其中有一列包含汉字(其他列是英文和数字)。但是,中文字符无法正确显示。看下面的照片
我用 .csv 文件加载了 .csv 文件pd.read_csv()
。
无论是display(data06_16)
或data06_16.head()
将无法正确显示中国文字。
我尝试将以下行添加到我的.bash_profile
:
export LC_ALL=zh_CN.UTF-8
export LANG=zh_CN.UTF-8
export LC_ALL=en_US.UTF-8
export LANG=en_US.UTF-8
Run Code Online (Sandbox Code Playgroud)
但它没有帮助。
我也尝试将encoding
arg添加到pd.read_csv()
:
pd.read_csv('data.csv', encoding='utf_8')
pd.read_csv('data.csv', encoding='utf_16')
pd.read_csv('data.csv', encoding='utf_32')
Run Code Online (Sandbox Code Playgroud)
这些根本行不通。
如何正确显示汉字?
我只记得源数据集是使用创建的encoding='GBK'
,所以我再次尝试使用
data06_16 = pd.read_csv("../data/stocks1542monthly.csv", encoding="GBK")
Run Code Online (Sandbox Code Playgroud)
现在,我可以看到所有的汉字。
谢谢你们!
我在这里看到三个可能的问题:
1)你可以试试这个:
import codecs
x = codecs.open("testdata.csv", "r", "utf-8")
Run Code Online (Sandbox Code Playgroud)
2)理论上另一种可能性是这样的:
import pandas as pd
df = pd.DataFrame(pd.read_csv('testdata.csv',encoding='utf-8'))
Run Code Online (Sandbox Code Playgroud)
3)也许你应该在使用Python导入之前将csv文件转换为utf-8(例如在Notepad ++中)?当然,它可以是一次性导入的解决方案,而不是自动过程的解决方案。
归档时间: |
|
查看次数: |
12986 次 |
最近记录: |