Python从数据库读取大量数据批量写入文件的方法


Posted in Python onDecember 10, 2018

使用机器学习训练数据时,如果数据量较大可能我们不能够一次性将数据加载进内存,这时我们需要将数据进行预处理,分批次加载进内存。

下面是代码作用是将数据从数据库读取出来分批次写入txt文本文件,方便我们做数据的预处理和训练机器学习模型。

#%%
import pymssql as MySQLdb #这里是python3 如果你是python2.x的话,import MySQLdb
#数据库连接属性
hst = '188.10.34.18'
usr = 'sa'
passwd = 'p@ssw0rd'
db = 'HistoryTrace'
 
#总共多少数据
allData = 1674333
#每个批次多少条数据
dataOfEach = 20000
#批次
batch = ceil(allData/dataOfEach)
 
#文件名
global IDctrl 
IDctrl = 1
filename = str(IDctrl)+'.txt'
 
#连接数据库
conn = MySQLdb.connect(host=hst,user=usr,password=passwd,database=db)
cur=conn.cursor()
 
while IDctrl<batch:
 #读取数据库
 sql = 'SELECT Longitude,Latitude,Altitude,VelComOfLong,VelComOfLati,Aircraft,Section,TimeMinus\
    FROM dealed1 where ID>=' + str(IDctrl) + ' and ID <' + str(IDctrl + dataOfEach) 
 cur.execute(sql)
 rows=cur.fetchall()
 #写文件
 f = open(filename,'w')
 f.writelines(str(rows))
 #文件名加1
 IDctrl+=1
 filename = str(IDctrl)+'.txt'
 
#关闭数据库连接
f.close()
conn.close()

以上这篇Python从数据库读取大量数据批量写入文件的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python中struct模块对字节流/二进制流的操作教程
Jan 21 Python
Ubuntu 下 vim 搭建python 环境 配置
Jun 12 Python
python进程管理工具supervisor的安装与使用教程
Sep 05 Python
python机器学习之随机森林(七)
Mar 26 Python
基于python3实现socket文件传输和校验
Jul 28 Python
Python读写zip压缩文件的方法
Aug 29 Python
python退出命令是什么?详解python退出方法
Dec 10 Python
python七夕浪漫表白源码
Apr 05 Python
pyinstaller打包单个exe后无法执行错误的解决方法
Jun 21 Python
pandas的qcut()方法详解
Jul 06 Python
Pytorch提取模型特征向量保存至csv的例子
Jan 03 Python
一小时学会TensorFlow2之基本操作2实例代码
Sep 04 Python
对Python实现简单的API接口实例讲解
Dec 10 #Python
python中dir()与__dict__属性的区别浅析
Dec 10 #Python
python分块读取大数据,避免内存不足的方法
Dec 10 #Python
Python 文本文件内容批量抽取实例
Dec 10 #Python
Python中作用域的深入讲解
Dec 10 #Python
python实现根据文件关键字进行切分为多个文件的示例
Dec 10 #Python
Python文件常见操作实例分析【读写、遍历】
Dec 10 #Python
You might like
?繁体转换的class
2006/10/09 PHP
php 获取当前访问的url文件名的方法小结
2010/02/08 PHP
PHP实现图片压缩的两则实例
2014/07/19 PHP
php实现购物车功能(下)
2016/01/05 PHP
php实现文件与16进制相互转换的方法示例
2017/02/16 PHP
Laravel 修改默认日志文件名称和位置的例子
2019/10/17 PHP
用js实现的模拟jquery的animate自定义动画(2.5K)
2010/07/20 Javascript
通过action传过来的值在option获取进行验证的方法
2013/11/14 Javascript
JavaScript计算器网页版实现代码分享
2016/07/15 Javascript
jQuery实现一个简单的轮播图
2017/02/19 Javascript
Vue 滚动行为的具体使用方法
2017/09/13 Javascript
浅谈关于vue中scss公用的解决方案
2019/12/02 Javascript
vue实现评价星星功能
2020/06/30 Javascript
vue实现两个组件之间数据共享和修改操作
2020/11/12 Javascript
npm全局环境变量配置详解
2020/12/15 Javascript
在Python中使用SimpleParse模块进行解析的教程
2015/04/11 Python
探究Python中isalnum()方法的使用
2015/05/18 Python
python中的编码知识整理汇总
2016/01/26 Python
Python实现接受任意个数参数的函数方法
2018/04/21 Python
python 读取txt中每行数据,并且保存到excel中的实例
2018/04/29 Python
python读取几个G的csv文件方法
2019/01/07 Python
pandas 层次化索引的实现方法
2019/07/06 Python
python列表插入append(), extend(), insert()用法详解
2019/09/14 Python
python连接mongodb数据库操作数据示例
2020/11/30 Python
Python 虚拟环境工作原理解析
2020/12/24 Python
python 基于PYMYSQL使用MYSQL数据库
2020/12/24 Python
iPhoneX安全区域(Safe Area)底部小黑条在微信小程序和H5的屏幕适配
2020/04/08 HTML / CSS
购买限量版收藏品、珠宝和礼品:Bradford Exchange
2016/09/23 全球购物
德国低价购买灯具和家具网站:Style-home.de
2016/11/25 全球购物
软件测试英文面试题
2012/10/14 面试题
《临死前的严监生》教学反思
2014/02/13 职场文书
刊首寄语大全
2014/04/11 职场文书
离婚起诉书范文2015
2015/05/19 职场文书
培养联系人考察意见
2015/06/01 职场文书
MySQL系列之十三 MySQL的复制
2021/07/02 MySQL
MySQL分区以及建索引的方法总结
2022/04/13 MySQL