Python使用SQLite和Excel操作进行数据分析


Posted in Python onJanuary 20, 2018

昨日,女票拿了一个Excel文档,里面有上万条数据要进行分析,刚开始一个字段分析,Excel用的不错,还能搞定,到后来两个字段的分析,还有区间比如年龄段的数据分析,实在是心疼的不行,于是就想给她程序处理之。

当然,我是一直C++和Qt的,当时就想直接Qt+sqlite3写入数据库,然后就各种数据查询就行了,可做起来却发现,她机器上没有Qt环境,没有C++编译器,得,如果配置环境也得几个小时了,可当时根本没有那么多时间来做,幸好,之前还看过一些Python的东西,并且Python环境好配啊,于是就想用Python实现一个写数据库,查询的功能。于是,行动之。

环境配置

1、下载Python:http://www.python.org/downloads/;
2、下载Excel读取库:http://pypi.python.org/pypi/xlrd;
3、Sqlite3数据库:这个是Python自带的,倒是不用下载了。

编写代码

代码写的很简单,一个类,在构造函数的时候初始化数据库对象,析构的时候释放数据库对象。一个插入数据函数,一个读取Excel函数,话不多说,上代码:

import sqlite3
import xlrd

class FileDispose(object):
  """docstring for FileDispose"""
  def __init__(self, file):
    super(FileDispose, self).__init__()
    '''初始化数据库实例'''
    self.conn = sqlite3.connect(file)
    self.cursor = self.conn.cursor()

  def __del__(self):
    '''释放数据库实例'''
    self.cursor.close()
    self.conn.close()

  '''数据库插入操作'''
  def insert(self,id,name,sex,age,score,addr):
    sql = 'insert into student(id,name,sex,age,score,addr) values (%d,\"%s\",\"%s\",\"%s\",\"%s\",\"%s\")' % (int(id),name,sex,age,score,addr)
    print(sql)
    self.cursor.execute(sql)
    self.conn.commit()

  '''读取Excel文件'''
  def readFile(self, file):
    data = xlrd.open_workbook(file)
    table = data.sheets()[2]
    for rowId in range(1, 100):
      row = table.row_values(rowId)
      if row:
        self.insert(rowId,row[0],row[1],row[2],row[3],row[4])


fd = FileDispose("F:/test.db")
fd.readFile('F:/excel.xlsx')

数据库表是我直接拿SQLiteSpy创建的,字段有id,name,sex,age,score,addr这几个。

总结

以上就是本文关于Python使用SQLite和Excel操作进行数据分析的全部内容,希望对大家有所帮助。感兴趣的朋友可以继续参阅本站其他相关专题,如有不足之处,欢迎留言指出。感谢朋友们对本站的支持!

Python 相关文章推荐
详解Python命令行解析工具Argparse
Apr 20 Python
python print 按逗号或空格分隔的方法
May 02 Python
python学习笔记--将python源文件打包成exe文件(pyinstaller)
May 26 Python
django中模板的html自动转意方法
May 27 Python
python并发编程多进程 模拟抢票实现过程
Aug 20 Python
使用python和pygame制作挡板弹球游戏
Dec 03 Python
Python调用钉钉自定义机器人的实现
Jan 03 Python
基于pytorch 预训练的词向量用法详解
Jan 06 Python
使用Python-OpenCV消除图像中孤立的小区域操作
Jul 05 Python
python3 通过 pybind11 使用Eigen加速代码的步骤详解
Dec 07 Python
解决jupyter notebook启动后没有token的坑
Apr 24 Python
python单向链表实例详解
May 25 Python
python与sqlite3实现解密chrome cookie实例代码
Jan 20 #Python
Python实现PS滤镜中马赛克效果示例
Jan 20 #Python
浅析python协程相关概念
Jan 20 #Python
Python实现可自定义大小的截屏功能
Jan 20 #Python
python+matplotlib绘制饼图散点图实例代码
Jan 20 #Python
Python+matplotlib绘制不同大小和颜色散点图实例
Jan 19 #Python
Python搭建FTP服务器的方法示例
Jan 19 #Python
You might like
PHP的博客ping服务代码
2012/02/04 PHP
从零开始学YII2框架(三)扩展插件yii2-gird
2014/08/20 PHP
PHP中的session安全吗?
2016/01/22 PHP
关于Laravel Route重定向的一个注意点
2017/01/16 PHP
摘自启点的main.js
2008/04/20 Javascript
基于JQuery的cookie插件
2010/04/07 Javascript
你必须知道的Javascript知识点之"字面量和对应类型"说明介绍
2013/04/23 Javascript
自定义ExtJS控件之下拉树和下拉表格附源码
2013/10/15 Javascript
基于 Docker 开发 NodeJS 应用
2014/07/30 NodeJs
jQuery xml字符串的解析、读取及查找方法
2016/03/01 Javascript
浅析jQuery 3.0中的Data
2016/06/14 Javascript
Javascript中indexOf()和lastIndexOf应用方法实例
2016/08/24 Javascript
深入理解Vue官方文档梳理之全局API
2017/11/22 Javascript
webpack打包node.js后端项目的方法
2018/03/10 Javascript
JS数组的高级使用方法示例小结
2020/03/14 Javascript
vue style width a href动态拼接问题的解决
2020/08/07 Javascript
python使用win32com库播放mp3文件的方法
2015/05/30 Python
Python使用面向对象方式创建线程实现12306售票系统
2015/12/24 Python
使用TensorFlow实现简单线性回归模型
2019/07/19 Python
python返回数组的索引实例
2019/11/28 Python
Python sql注入 过滤字符串的非法字符实例
2020/04/03 Python
Python关键字及可变参数*args,**kw原理解析
2020/04/04 Python
python+opencv实现车道线检测
2021/02/19 Python
墨西哥网上购物:Linio墨西哥
2016/10/20 全球购物
加拿大领先的时尚和体育零售商:Sporting Life
2019/12/15 全球购物
销售团队获奖感言
2014/08/14 职场文书
员工生日活动方案
2014/08/24 职场文书
纪念九一八事变83周年国旗下讲话稿
2014/09/15 职场文书
2014年群众路线党员自我评议
2014/09/24 职场文书
毕业生银行实习自我鉴定
2014/10/14 职场文书
大学生求职自荐信范文
2015/03/04 职场文书
公司清洁工岗位职责
2015/04/15 职场文书
如何做好员工培训计划?
2019/07/09 职场文书
低门槛开发iOS、Android、小程序应用的前端框架详解
2021/10/16 Javascript
pytorch分类模型绘制混淆矩阵以及可视化详解
2022/04/07 Python
Android 界面一键变灰 深色主题工具类
2022/04/28 Java/Android