← 返回首页
Python3基础教程(九十一)
发表时间:2023-03-26 23:10:57
MySQL

Pandas在做数据分析时,一般需要从数据库中读取数据,然后再交给算法进行分析,最后将结果保存。pandas连接mysql数据库需要使用pymysql以及sqlalchemy两个库。

1.pandas连接MySQL

pandas连接MySQL实例。

import pymysql
import pandas as pd
from sqlalchemy import create_engine
from sqlalchemy import text

engine = create_engine('mysql+pymysql://root:root@localhost:3306/springboot?charset=utf8')
connection = engine.connect()

#查询users表
df = pd.read_sql(sql='users', con=connection)
print(df)

#新增数据
query_str=text("insert into users(username,password,gender,birthday,email,mobile,flag,version) values ('王大锤','123456','男','2010-10-10','dachui@qq.com','18991167111',0,1)")

result = connection.execute(query_str)
connection.commit()
print("受影响记录条数:",result.rowcount)

#查询users表
df = pd.read_sql(sql='users', con=connection)
print(df)

运行效果:

    uid username  password  ... flag          modify_time version
0     2      张三丰    654321  ...    0  2023-03-09 15:40:38       2
1     3      风清扬    654321  ...    0  2023-03-09 15:40:38       2
2     4    风东方不败    654321  ...    0  2023-03-09 15:40:38       5
3     5       黄蓉    123456  ...    0  2023-03-08 13:57:45       1
4     6       郭靖    666666  ...    0  2023-03-24 11:39:50       3
5     7      张无忌   4444444  ...    0  2023-03-24 11:28:06       5
6     8      黄药师    123456  ...    1  2023-03-09 08:50:17       2
7     9      黄药师    123456  ...    1  2023-03-09 09:22:45       3
8    10      黄药师    123456  ...    0  2023-03-09 09:23:57       1
9    11      宋小宝    666666  ...    0  2023-03-09 09:25:12       1
10   12      王大锤   1234567  ...    0  2023-03-09 09:28:53       1
11   13      李幺妹  87654321  ...    0  2023-03-09 11:38:02       1
12   14       曹操    123456  ...    0  2023-03-09 09:32:39       1
13   15       刘能    666666  ...    0  2023-03-09 10:55:06       1
14   16      周星星    123456  ...    0  2023-03-09 10:56:23       1
15   17    admin    123456  ...    0  2023-03-09 10:58:51       1
16   18   tester    123456  ...    0  2023-03-09 10:59:48       1
17   19       张飞    123456  ...    0  2023-03-09 11:06:04       2
18   20      王老虎    666666  ...    0  2023-03-09 11:32:16       1
19   21      王志兴    123456  ...    0  2023-03-09 11:45:32       3

[20 rows x 11 columns]
受影响记录条数: 1
    uid username  password  ... flag          modify_time version
0     2      张三丰    654321  ...    0  2023-03-09 15:40:38       2
1     3      风清扬    654321  ...    0  2023-03-09 15:40:38       2
2     4    风东方不败    654321  ...    0  2023-03-09 15:40:38       5
3     5       黄蓉    123456  ...    0  2023-03-08 13:57:45       1
4     6       郭靖    666666  ...    0  2023-03-24 11:39:50       3
5     7      张无忌   4444444  ...    0  2023-03-24 11:28:06       5
6     8      黄药师    123456  ...    1  2023-03-09 08:50:17       2
7     9      黄药师    123456  ...    1  2023-03-09 09:22:45       3
8    10      黄药师    123456  ...    0  2023-03-09 09:23:57       1
9    11      宋小宝    666666  ...    0  2023-03-09 09:25:12       1
10   12      王大锤   1234567  ...    0  2023-03-09 09:28:53       1
11   13      李幺妹  87654321  ...    0  2023-03-09 11:38:02       1
12   14       曹操    123456  ...    0  2023-03-09 09:32:39       1
13   15       刘能    666666  ...    0  2023-03-09 10:55:06       1
14   16      周星星    123456  ...    0  2023-03-09 10:56:23       1
15   17    admin    123456  ...    0  2023-03-09 10:58:51       1
16   18   tester    123456  ...    0  2023-03-09 10:59:48       1
17   19       张飞    123456  ...    0  2023-03-09 11:06:04       2
18   20      王老虎    666666  ...    0  2023-03-09 11:32:16       1
19   21      王志兴    123456  ...    0  2023-03-09 11:45:32       3
20   33      王大锤    123456  ...    0                 None       1

[21 rows x 11 columns]