📅  最后修改于: 2023-12-03 14:57:43.720000             🧑  作者: Mango
在 Python 中,pandas 是一个常用的数据分析库。其中的 DataFrame 可以方便地读取和处理各种数据来源,包括各种文件和数据库。在这篇介绍中,我们将着重介绍如何用 pandas 读取数据库。
在使用 pandas 读取数据库之前,我们需要安装好 pandas 和相关数据库的 python 驱动(比如 pymysql、psycopg2 等),以及创建好数据库和表格,并灌入一些数据作为示例。这些操作不在本文讨论范围,读者应该自行完成。
首先我们需要导入 pandas 和相关的数据库驱动,然后设置连接参数:
import pandas as pd
import pymysql
# 设置连接参数
conn = pymysql.connect(
host='localhost',
port=3306,
user='root',
password='password',
database='test_db'
)
有了连接之后,我们就可以通过 pd.read_sql()
函数读取数据库中的数据,具体用法如下:
# 读取整个表格
df = pd.read_sql('select * from my_table', conn)
# 读取表格中的部分数据
df = pd.read_sql('select id, name, age from my_table where age > 30', conn)
我们可以使用 SQL 语句来筛选和获取所需的数据。
读取到表格数据后,我们可以利用 pandas 提供的各种函数、方法来处理数据:
# 查看前几行数据
df.head()
# 统计数据
df.describe()
# 分组统计
df.groupby('gender')['salary'].mean()
# 同时处理多个表格
df1 = pd.read_sql('select * from table1', conn)
df2 = pd.read_sql('select * from table2', conn)
df3 = pd.read_sql('select * from table3', conn)
merged_df = pd.concat([df1, df2, df3], axis=1)
除了以上示例以外,pandas 还提供了非常丰富的数据处理方法,具体可以参考 pandas 官方文档。
当我们读取完毕表格数据后,需要关闭连接,释放资源。
# 关闭连接
conn.close()
通过使用 pandas,我们可以方便地读取数据库中的数据,并进行各种数据处理和分析。这种方式非常适合在数据量比较大、结构比较复杂的情况下使用。