当所需的数据存贮在MySQL数据库中时,那么数据分析首要任务就是要通过Pandas读取MySQL数据。例如,某网站注册用户信息保存在MySQL数据库中,如图所示(部分数据),下面将使用Pandas的read_sql()方法来读取这些数据,运行程序效果如图所示。

读取MySQL数据库中的数据核心技术包括以下两点:

(1)通过PyMySQL模块操作MySQL数据库

PyMySQL模块是Python专门用于操作MySQL数据库的模块,主要包括连接数据库、创建游标、执行SQL语句等。

(2)使用Pandas的read_sql()方法读取MySQL数据库中的数据

read_sql()方法包括以下几个主要的参数,具体介绍如下:sql:SQL查询语句。

con:连接数据库的字符串。

index_col:指定某一列作为索引。

coerce_float:将数字形式的字符串直接以float类型读入。

parse_dates:将某一列日期型字符串转换为datetime型数据,与Pandas的to_datetime()函数功能类似。

读取MySQL数据库中的数据分两大步进行介绍,首先导入MySQL数据库,然后通过Python的Pandas读取MySQL数据库中的数据,具体实现步骤如下:导入MySQL数据库

(1)安装MySQL软件,设置密码(本项目密码为root,也可以是其他密码),该密码一定要记住,连接MySQL数据库时会用到,其他设置采用默认设置即可。

(2)创建数据库

运行MySQL,首先输入密码,进入mysql命令提示符,如图所示,然后使用CREATE DATABASE命令创建数据库。例如,创建数据库test,命令如下:

CREATE DATABASE test;

(3)导入SQL文件(user.sql)

在mysql命令提示符下通过use命名进入对应的数据库。例如,进入数据库test,命令如下:

use test;

出现Database changed,说明已经进入数据库。接下来使用source命令指定SQL文件,然后导入该文件。例如,导入user.sql,命令如下:

source D:/user.sql

下面预览下导入的数据表,使用SQL查询语句(Select语句)查询表中前5条数据,命令如下:

select * from user limit 5;

运行结果如图所示。

至此,导入MySQL数据库的任务就完成了,接下来在Python中安装PyMySQL模块,连接MySQL数据库。读取MySQL数据库中的数据

(1)下载安装PyMySQL模块。

方式1:pip install pymysql

方式2:在Pycharm开发环境中安装

(2)导入相关模块模块,代码如下。

importpymysql

importpandas aspd

(3)使用连接语句连接MySQL数据库,代码如下。

#连接MySQL数据库

conn = pymysql.connect(host = "localhost",user = 'root',passwd = password,db = database_name,charset="utf8")

sql_query = 'SELECT * FROM database_name.table_name'

(4)上述语句中,需要修改的参数代码是passwd和db,即指定MySQL密码和项目使用的数据库。那么,本实例连接代码如下:

conn = pymysql.connect(host = "localhost",user = 'root',passwd ='111',db = 'test',charset="utf8")

(5)使用Pandas的read_sql()方法读取MySQL数据库中的数据,代码如下。

sql_query = 'SELECT * FROM test.user' #SQL查询语句

data = pd.read_sql(sql_query, con=conn) #读取MySQL数据

conn.close() # 关闭数据库连接

print(data.head()) # 输出部分数据