这次的实战作业是分析imdb5000电影数据集
因为一开始时使用的movie_metadata.csv进行的数据处理,但是要求是使用数据库存储数据再进行数据分析,因此需要连接数据库
首先先引入库
import pymysql
数据库连接相关变量:
localhost:也可写成数据库主机IP:127.0.0.1,
port:数据库端口号
user:数据库用户名,
password:数据库用户密码
database / db:数据库实例名,
charset:数据库编码集
- 第一种方法(也是最常用的方法)
conn = pymysql.connect(host="127.0.0.1", user="root", password="root", db="movie")
movies_df = pd.read_sql("select * from movie_metadata", conn)
- 第二种方法
conn = pymysql.connect(host='localhost', port=3306, user='root', passwd='root', db="movie")
# 获取游标
cur = conn.cursor()
cur.execute("SELECT * FROM movie_metadata")
# 获取游标指定sql后得到的数据
data = cur.fetchall()
conn.close()
此时会发现没有列名,可手动添加列名
df = pd.DataFrame(data=data, columns=["列名1","列名2","列名3"])
- 第三种方法(类似于第一种方法)
# 读取数据库表,返回表数据
def movies_df(movie_metadata):
conn = Connect(host='localhost', port=3306, user='root', passwd='root',
database='movie', charset='utf8')
df = pd.read_sql(f"SELECT * FROM {movie_metadata}", conn)
return df