1.当csv文件中不包含中文时

这种情况的读取就比较简单了
读取:

starbucks = pd.read_csv('H:/python数据分析/数据/starbucks.csv')
starbucks.head()   #显示前五行数据 

存储

starbucks.to_csv('newdata')   # newdata:保存的文件名
# 还可以指定保存时的索引要不要
starbucks.to_csv('newdata',index=False) # 保存时不显示index(索引)值

2.当csv文件中含有中文时

2.1文件读取
  • 读取带有中文的csv文件时,需要加上 engine=‘python’
out = pd.read_csv('D:/MyData/Jupyter notebook/数据分析/newout1.csv',engine='python')
out
  • 如果还不行则再加上encoding=‘utf-8’
out = pd.read_csv('D:/MyData/Jupyter notebook/数据分析/newout1.csv',engine='python',encoding='utf-8')
out
  • 有时候会发现这样还是不行,那就再把 encoding='utf-8’换成 encoding='utf-8-sig’试试,这样应该可以解决大部分的读取问题
out = pd.read_csv('D:/MyData/Jupyter notebook/数据分析/newout1.csv',engine='python',encoding='utf-8-sig')
out
  • 如果你的文件是’gbk’格式的话,那么你可以试试用encoding=‘gbk’
out = pd.read_csv('D:/MyData/Jupyter notebook/数据分析/newout1.csv',engine='python',encoding='gbk')
out
2.2文件保存
  • 同样保存带有中文的csv文件需要加上encoding=‘utf-8’,否则文件打开后会出现中文乱码的情况
out.to_csv('new_out.csv',index=False,encoding='utf-8')
  • 如果乱码问题还未解决,试试encoding=‘utf-8-sig’,一般都能解决,反正我试过好多遍了,没有问题
out.to_csv('new_out2.csv',index=False,encoding='utf-8-sig')
Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐