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中几种导入模块的方式总结
Apr 27 Python
python中文分词教程之前向最大正向匹配算法详解
Nov 02 Python
Django使用httpresponse返回用户头像实例代码
Jan 26 Python
分分钟入门python语言
Mar 20 Python
浅谈python编译pyc工程--导包问题解决
Mar 20 Python
解决pyqt5中QToolButton无法使用的问题
Jun 21 Python
通过python实现弹窗广告拦截过程详解
Jul 10 Python
python元组的概念知识点
Nov 19 Python
python 回溯法模板详解
Feb 26 Python
pandas中ix的使用详细讲解
Mar 09 Python
Django {{ MEDIA_URL }}无法显示图片的解决方式
Apr 07 Python
python爬取代理IP并进行有效的IP测试实现
Oct 09 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
Laravel框架实现发送短信验证功能代码
2016/06/06 PHP
PHP入门教程之表单与验证实例详解
2016/09/11 PHP
PHP读取CSV大文件导入数据库的实例
2017/07/24 PHP
PHP获取二叉树镜像的方法
2018/01/17 PHP
使用JQUERY Tabs插件宿主IFRAMES
2010/01/01 Javascript
Jquery submit()无法提交问题
2013/04/21 Javascript
jQuery鼠标悬浮链接弹出跟随图片实例代码
2016/01/08 Javascript
jQuery动态修改字体大小的方法【测试可用】
2016/09/09 Javascript
BootStrap实现轮播图效果(收藏)
2016/12/30 Javascript
js时间控件只显示年月
2017/01/08 Javascript
JS按条件 serialize() 对应标签的使用方法
2017/07/24 Javascript
如何在项目中使用log4.js的方法步骤
2019/07/16 Javascript
深入了解JavaScript 防抖和节流
2019/09/12 Javascript
在layui框架中select下拉框监听更改事件的例子
2019/09/20 Javascript
vue路由跳转传递参数的方式总结
2020/05/10 Javascript
jQuery实现tab栏切换效果
2020/12/22 jQuery
[28:48]《真视界》- 2017年国际邀请赛
2017/09/27 DOTA
[54:19]完美世界DOTA2联赛PWL S2 Magma vs PXG 第二场 11.28
2020/12/01 DOTA
Python中Continue语句的用法的举例详解
2015/05/14 Python
fastcgi文件读取漏洞之python扫描脚本
2017/04/23 Python
用python编写第一个IDA插件的实例
2018/05/29 Python
Pycharm远程调试原理及具体配置详解
2019/08/08 Python
tensorflow 查看梯度方式
2020/02/04 Python
selenium+python配置chrome浏览器的选项的实现
2020/03/18 Python
配置python的编程环境之Anaconda + VSCode的教程
2020/03/29 Python
Python reques接口测试框架实现代码
2020/07/28 Python
澳大利亚领先的在线美容商店:Facial Co
2017/10/22 全球购物
说出数据连接池的工作机制是什么?
2013/04/19 面试题
高中生学习生活的自我评价
2013/10/09 职场文书
自荐书范文范例
2014/02/13 职场文书
知识竞赛拉拉队口号
2014/06/16 职场文书
群众路线自查报告及整改措施
2014/11/04 职场文书
社区党务工作总结2015
2015/05/19 职场文书
中国梦宣传标语口号
2015/12/26 职场文书
Mysql数据库中datetime、bigint、timestamp来表示时间选择,谁来存储时间效率最高
2021/08/23 MySQL
Html5获取用户当前位置的几种方式
2022/01/18 HTML / CSS