码迷,mamicode.com
首页 > 其他好文 > 详细

数据准备1 数据导入、导出

时间:2020-07-26 19:00:03      阅读:59      评论:0      收藏:0      [点我收藏+]

标签:win   use   读取   data   xlsx   使用   bof   cap   microsoft   

数据准备1 数据导入、导出

?

读取Excel(.xlrx文件)并进行导出备份

import pandas as pd
from pandas import DataFrame

# Pandas可以直接从xlsx(excel)、csv等文件中导入数据,也可以输出到xlsx(excel)、csv格式中

score = DataFrame(pd.read_excel(io=‘C:\\Users\\HP\\Desktop\\12.xlsx‘))
score.to_excel(excel_writer=‘C:\\Users\\HP\\Desktop\\12_bk1.xlsx‘)
print(score)

?

读取Excel(.csv文件)并进行导出备份

data = DataFrame(pd.read_csv(‘C:\\Users\\HP\\Desktop\\12.csv‘))
data.to_csv(‘C:\\Users\\HP\\Desktop\\12_csvbk.csv‘)
print(data)

?

Error 解决

  • xlrd.biffh.XLRDError: Unsupported format, or corrupt file: Expected BOF record; ...
    

    本来的文件类型是"Microsoft Excel 逗号分隔值文件 (.CSV)",出现这个报错后我们将文件另存为"Excel工作薄",注意修改后要将代码中的.csv修改为.xlsx

    如果要读取.csv格式,应该使用pandas.read_csv()

  • SyntaxError: (unicode error) ‘unicodeescape‘ codec can‘t decode bytes in position 2-3
    

    不能直接copy windows的路径,因为\在python中表示转义

    一般使用\转义为‘‘,或者在字符串前加r或R,表示"该字符串是非转义的原始字符串"

    另外,字符串前加u或U表示"该字符串是Unicode字符串"

  • ValueError: No engine for filetype: ‘csv‘
    

    将to_excel()改为to_ csv ()

  • UnicodeDecodeError: ‘utf-8‘ codec can‘t decode byte 0xc8 in position 0: invalid continuation byte
    

    原因:字符集不匹配,原来.csv使用的字符集是ANSI,需要改为utf8

    解决方法1:将原来.csv文件以notepad++打开,全选并剪切,将编码改为utf8,粘贴,保存
    解决方法2:将原来.csv文件以记事本打开,另存为,选择编码为utf8,覆盖保存

?

数据准备1 数据导入、导出

标签:win   use   读取   data   xlsx   使用   bof   cap   microsoft   

原文地址:https://www.cnblogs.com/G-Aurora/p/13380299.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!