数据准备1 数据导入导出

Posted g-aurora

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了数据准备1 数据导入导出相关的知识,希望对你有一定的参考价值。

数据准备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 数据导入导出的主要内容,如果未能解决你的问题,请参考以下文章

SpringBoot+easypoi实现excel的导入导出

大数据篇-使用SQOOP导入导出数据

ElasticSearch 文档数据导入导出及两个ElasticSearch互相导入操作

MySQL-导入与导出

Linux12 -MYSQL数据库 -->13.1数据的快速导出和导入

PLSQL导入导出数据库