mysql导入pandas数据类型_Python操作Mysql数据库入门——数据导入pandas(数据分析准备)...

作者:王大伟 Python爱好者社区唯一小编,请勿转载,谢谢。

小编配套免费视频教程:

课程内容:1、Anaconda安装2、jupyter常用操作3、Python基本数据类型4、Python基本运算和表达式5、Python程序基本控制流程(顺序,分支,循环)6、Python特色数据类型(列表,元组,字典,集合)7、Python函数8、Python模块导入使用之time、random模块9、Python异常处理10、Python文件操作 11、Python后续学习提升方向和建议

公众号:Python爱好者社区(微信ID:python_shequ),关注,查看更多连载内容

前言

上一篇写到了mysql与python的简单交互

还讲到了一些基础的面向对象设计

这两天探索了一下,发现如果是用pandas做数据分析

简单的几行代码即可将mysql的数据导入pandas进行分析

环境

Python 3.X

IDE : juyter notebook

使用Python连接数据库

import MySQLdb

import pandas as pd

#使用python连接数据库

conn = MySQLdb.connect(

host = '127.0.0.1',#本地地址

user = 'root',#一般默认用户名

passwd = '********',#本地数据库登录密码(这里用你自己的密码!!!)

db = 'test',#数据库名称(这里用你自己的数据库名称!!!)

port = 3306,#安装mysql默认的端口号

charset = 'utf8'#设置数据库统一编码

)

sql = 'SELECT * FROM `tdb_goods`;'

df = pd.read_sql(sql,conn)

导入表中所有数据并查看前五行

sql = 'SELECT * FROM `tdb_goods`;'

df = pd.read_sql(sql,conn)

df.head()

UvQnM3.jpg

UvQnM3.jpg

选你所想

一般来说,学sql增删查改基础中,查用的比较多,接下来我们简单使用一些sql查询

查找cate_id=3的记录:

sql1 = 'SELECT * FROM `tdb_goods` WHERE `cate_id` = 3;'

df1 = pd.read_sql(sql1,conn)

df1

MrAzY3.jpg

MrAzY3.jpg

查找价格大于5000的商品,注意这里默认按照goods_id排序的:

sql2 = 'SELECT * FROM `tdb_goods` WHERE `goods_price` > 5000;'

df2 = pd.read_sql(sql2,conn)

df2

Nruquq.jpg

Nruquq.jpg

加上ORDER BY `goods_prices`之后,就是按照价格升序排列:

sql2 = 'SELECT * FROM `tdb_goods` WHERE `goods_price` > 5000 ORDER BY `goods_price;'

df2 = pd.read_sql(sql2,conn)

df2

FVF3ue.jpg

FVF3ue.jpg

sql默认的是按照升序排列,如果想按照降序排列,可以这样写:

sql2 = 'SELECT * FROM `tdb_goods` WHERE `goods_price` > 5000 ORDER BY `goods_price` DESC;'

df2 = pd.read_sql(sql2,conn)

df2

vE3e2y.jpg

vE3e2y.jpg

查找所有的平板电脑:

sql3 = 'SELECT * FROM `tdb_goods` WHERE `goods_name` like "%平板电脑%";'

df3 = pd.read_sql(sql3,conn)

df3

UvaQRb.jpg

UvaQRb.jpg

将数据库文件导出成csv

df.to_csv('E:\goods_info.csv', encoding = 'utf-8', index = False)

2aIbau.jpg

2aIbau.jpg

eQRRNz.jpg

eQRRNz.jpg

可以看到,数据成功导出成csv了~

最后养成好习惯,断开与数据库的连接:

conn.close()

我们再次查询,发现报错了,说明确实已经断开了连接:

BvyMnm.jpg

BvyMnm.jpg

如果运行代码报错,很可能是你的数据库名和数据库登录密码没有修改~

文中如有错误和叙述不妥之处,望指正。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值