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

时间:2021-05-22

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

下面是代码作用是将数据从数据库读取出来分批次写入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 = 1filename = 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从数据库读取大量数据批量写入文件的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章