pandas实现to_sql将DataFrame保存到数据库中


Posted in Python onJuly 03, 2019

目的

在数据分析时,我们有中间结果,或者最终的结果,需要保存到数据库中;或者我们有一个中间的结果,如果放到数据库中通过sql操作会更加的直观,处理后再将结果读取到DataFrame中。这两个场景,就需要用到DataFrame的to_sql操作。

具体的操作

连接数据库代码

import pandas as pd
from sqlalchemy import create_engine
# default
engine = create_engine('mysql+pymysql://ledao:ledao123@localhost/pandas_learn')
original_data = pd.read_sql_table('cellfee', engine)
original_data

结果如下所示。

pandas实现to_sql将DataFrame保存到数据库中

对数据进行汇总,每个小区的电费进行求和放到Series中,然后将所有小区的总电费放到DataFrame中,最后将DataFrame保存到数据库中,代码如下所示。

all_cells = []
for k, v in original_data.groupby(by=['cityid', 'cellid']):
onecell = pd.Series(data=[k[0], k[1], v['fee'].sum()], index=['cityid', 'cellid', 'fee_sum'])
all_cells.append(onecell)
all_cells = pd.DataFrame(all_cells)
all_cells.to_sql(name='cells_fee', con=engine, chunksize=1000, if_exists='replace', index=None)

对于DataFrame的to_sql函数,需要注意的参数在代码中已经写出来,其中比较重要的是chunksize、if_exists和index。
chunksize可以设置一次入库的大小;if_exists设置如果数据库中存在同名表怎么办,‘replace'表示将表原来数据删除放入当前数据;‘append'表示追加;‘fail'则表示将抛出异常,结束操作,默认是‘fail';index=接受boolean值,表示是否将DataFrame的index也作为表的列存储。

最终存表的结果如下图所示。

pandas实现to_sql将DataFrame保存到数据库中

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python重新引入被覆盖的自带function
Jul 16 Python
Python中用于去除空格的三个函数的使用小结
Apr 07 Python
使用Python中的greenlet包实现并发编程的入门教程
Apr 16 Python
使用python检测主机存活端口及检查存活主机
Oct 12 Python
神经网络相关之基础概念的讲解
Dec 29 Python
python求加权平均值的实例(附纯python写法)
Aug 22 Python
基于keras中的回调函数用法说明
Jun 17 Python
Python Switch Case三种实现方法代码实例
Jun 18 Python
Python爬虫设置ip代理过程解析
Jul 20 Python
python requests模块的使用示例
Apr 07 Python
自动在Windows中运行Python脚本并定时触发功能实现
Sep 04 Python
Pygame Event事件模块的详细示例
Nov 17 Python
python实现控制COM口的示例
Jul 03 #Python
python pandas时序处理相关功能详解
Jul 03 #Python
在linux下实现 python 监控usb设备信号
Jul 03 #Python
django-allauth入门学习和使用详解
Jul 03 #Python
python使用mitmproxy抓取浏览器请求的方法
Jul 02 #Python
Python使用线程来接收串口数据的示例
Jul 02 #Python
使用Python在Windows下获取USB PID&VID的方法
Jul 02 #Python
You might like
php中ob(Output Buffer 输出缓冲)函数使用方法
2007/07/21 PHP
不用写JS也能使用EXTJS视频演示
2008/12/29 Javascript
基于jquery实现的表格分页实现代码
2011/06/21 Javascript
JS实现图片横向滚动效果示例代码
2013/09/04 Javascript
简单实用的全选反选按钮例子
2013/10/18 Javascript
javascript动态判断html元素并执行不同的操作
2014/06/16 Javascript
JavaScript设计模式经典之命令模式
2016/02/24 Javascript
jquery 动态增加,减少input表单的简单方法(必看)
2016/10/12 Javascript
bootstrap的3级菜单样式,支持母版页保留打开状态实现方法
2016/11/10 Javascript
基于jQuery实现文字打印动态效果
2017/04/21 jQuery
Vue框架里使用Swiper的方法示例
2018/09/20 Javascript
微信小程序:数据存储、传值、取值详解
2019/05/07 Javascript
Vue为什么要谨慎使用$attrs与$listeners
2020/08/27 Javascript
[48:39]Ti4主赛事胜者组第一天 EG vs NEWBEE 2
2014/07/19 DOTA
python自动化测试实例解析
2014/09/28 Python
Python使用Scrapy爬取妹子图
2015/05/28 Python
Python数据预处理之数据规范化(归一化)示例
2019/01/08 Python
对python:循环定义多个变量的实例详解
2019/01/20 Python
浅析Python 实现一个自动化翻译和替换的工具
2019/04/14 Python
windows系统中Python多版本与jupyter notebook使用虚拟环境的过程
2019/05/15 Python
python 实现让字典的value 成为列表
2019/12/16 Python
PyTorch笔记之scatter()函数的使用
2020/02/12 Python
python 读取yaml文件的两种方法(在unittest中使用)
2020/12/01 Python
CSS实现聊天气泡效果
2020/04/26 HTML / CSS
利用简洁的图片预加载组件提升html5移动页面的用户体验
2016/03/11 HTML / CSS
I.T中国官网:精选时尚设计师单品网购平台
2018/03/26 全球购物
化工专业大学生职业生涯规划书
2014/01/14 职场文书
在校硕士自我鉴定
2014/01/23 职场文书
周年庆促销方案
2014/03/15 职场文书
个人安全承诺书
2014/05/22 职场文书
内乡县衙导游词
2015/02/05 职场文书
英文慰问信
2015/02/14 职场文书
2015年健康教育工作总结
2015/04/10 职场文书
国庆阅兵观后感
2015/06/15 职场文书
详解CSS中的特指度和层叠问题
2021/07/15 HTML / CSS
python机器学习Github已达8.9Kstars模型解释器LIME
2021/11/23 Python