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

yipeiwu_com6年前Python基础

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

下面是代码作用是将数据从数据库读取出来分批次写入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设计】。

相关文章

Django框架文件上传与自定义图片上传路径、上传文件名操作分析

本文实例讲述了Django框架文件上传与自定义图片上传路径、上传文件名操作。分享给大家供大家参考,具体如下: 文件上传 1、创建上传文件夹 在static文件夹下创建uploads用于存...

Python类和对象的定义与实际应用案例分析

Python类和对象的定义与实际应用案例分析

本文实例讲述了Python类和对象的定义与实际应用。分享给大家供大家参考,具体如下: 1.DVD管理系统 # -*- coding:utf-8 -*- #! python3 clas...

web.py获取上传文件名的正确方法

直接切入主题,从HTML页面上传文件,Python接收处理。但其中发现有些小问题,把它写出来,算是积累吧! HTML页面代码: 复制代码 代码如下: <form action="/...

使用PyInstaller将Pygame库编写的小游戏程序打包为exe文件及出现问题解决方法

使用PyInstaller将Pygame库编写的小游戏程序打包为exe文件及出现问题解决方法

下面看下通过Pyinstaller打包Pygame库写的小游戏程序出现的问题解决方法 # -基于Python的Pygame库的GUI游戏 游戏内容是通过飞船发射子弹来射击外星人 空格键为...

浅谈python新手中常见的疑惑及解答

1 lambda函数 函数格式是lambda keys:express   匿名函数lambda是一个表达式函数,接受keys参数,返回表达式的值。所以不用retur...