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通过装饰器检查函数参数数据类型的方法
Mar 13 Python
python编写的最短路径算法
Mar 25 Python
python类继承与子类实例初始化用法分析
Apr 17 Python
用Python的Django框架来制作一个RSS阅读器
Jul 22 Python
Python3之文件读写操作的实例讲解
Jan 23 Python
Numpy中矩阵matrix读取一列的方法及数组和矩阵的相互转换实例
Jul 02 Python
浅谈Python批处理文件夹中的txt文件
Mar 11 Python
python+os根据文件名自动生成文本
Mar 21 Python
使用Python给头像戴上圣诞帽的图像操作过程解析
Sep 20 Python
VScode连接远程服务器上的jupyter notebook的实现
Apr 23 Python
Python爬虫之App爬虫视频下载的实现
Dec 08 Python
如何利用python和DOS获取wifi密码
Mar 31 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
星际玩家的三大定律
2020/03/04 星际争霸
关于zend studio 出现乱码问题的总结
2013/06/23 PHP
ThinkPHP实现事务回滚示例代码
2014/06/23 PHP
PHP+jQuery 注册模块的改进(三):更新到Smarty3.1
2014/10/14 PHP
PHP Oauth授权和本地加密实现方法
2016/08/12 PHP
PHP开发之归档格式phar文件概念与用法详解【创建,使用,解包还原提取】
2017/11/17 PHP
datePicker——日期选择控件(with jquery)
2007/02/20 Javascript
JQuery选择器特辑 详细小结
2012/05/14 Javascript
Javascript:为input设置readOnly属性(示例讲解)
2013/12/25 Javascript
JS中怎样判断undefined(比较不错的方法)
2014/03/27 Javascript
JS实现的用来对比两个用指定分隔符分割的字符串是否相同
2014/09/19 Javascript
跟我学习javascript的prototype使用注意事项
2015/11/17 Javascript
jQuery实现单击按钮遮罩弹出对话框效果(1)
2017/02/20 Javascript
vue-router3.0版本中 router.push 不能刷新页面的问题
2018/05/10 Javascript
vue devtools的安装与使用教程
2018/08/08 Javascript
详解JS取出两个数组中的不同或相同元素
2019/03/20 Javascript
openlayers实现地图测距测面
2020/09/25 Javascript
[00:44]2016完美“圣”典 风云人物:Mikasa宣传片
2016/12/07 DOTA
基于Python实现的扫雷游戏实例代码
2014/08/01 Python
python实现图片识别汽车功能
2018/11/30 Python
Python 带有参数的装饰器实例代码详解
2018/12/06 Python
python 获取图片分辨率的方法
2019/01/08 Python
python实现大文本文件分割
2019/07/22 Python
DJango的创建和使用详解(默认数据库sqlite3)
2019/11/18 Python
python多进程重复加载的解决方式
2019/12/13 Python
Django crontab定时任务模块操作方法解析
2020/09/10 Python
python 获取计算机的网卡信息
2021/02/18 Python
世界上最好的儿童品牌:AlexandAlexa
2018/01/27 全球购物
房地产管理毕业生自荐信
2013/11/04 职场文书
医院办公室主任职责
2013/12/29 职场文书
工程招投标邀请书
2014/01/30 职场文书
科研先进个人典型材料
2014/01/31 职场文书
参观接待方案
2014/03/17 职场文书
学校班班通实施方案
2014/06/11 职场文书
关于国庆节的演讲稿
2014/09/05 职场文书
2016大学生就业指导课心得体会
2016/01/15 职场文书