Python使用pandas从mysql数据库读取数据并导出到Excel

工作中我们经常会从数据库中提取数据,处理之后,将结果整理为excel输出。本文主要介绍使用python的pandas工具从mysql数据获取数据,按要求处理之后,导出到excel文件。

安装依赖

首先确定已经安装PyMySQL,pandas,sqlalchemy,openpyxl包,本文会使用这几个包:

pip install PyMySQL
pip install pandas
pip install sqlalchemy
pip install openpyxl

 

程序代码

程序中先从mysql读取数据加载到pandas中,然后使用pandas处理数据,最后将处理后的数据导出到excel文件。

from sqlalchemy import create_engine
import pandas as pd

def get_sex(series):
    val= ''
    if pd.isna(series['sex']):
        return val
 
    if series['sex'] == '1':
        val= '男'
    elif series['sex'] == '0':
        val= '女'

    return val

# SQL 查询语句
sql = 'SELECT id, name, sex, age, birthday FROM user'

# 加载数据
engine = create_engine('mysql+pymysql://root:[email protected]:3306/user')
df_read = pd.read_sql_query(sql, engine)

# 处理数据
# 将性别按照码表处理为中文
df_read['sex'] = df_read.apply(get_sex, axis=1)
# 将生日处理为时间格式 yyyyMMdd -> yyyy/MM/dd
df_read['birthday'] = df_read['birthday'].apply(lambda x : (x[0:4] + '/' + x[4:6] + '/' + x[6:8]) if len(x) == 8 else x)

# 将处理后的数据导出为excel
df_read.to_excel("F:\\user\\export\\user_001.xlsx", index=False)  

 

总结

本文主要介绍如果使用pandas从mysql中获取数据,然后处理数据,最后导出数据的一个过程。程序代码比较简单,但是该类型的工作在我们的工作中是非常多的。如果掌握了该方法,将极大的提高我们工作的效率。

参考

Windows平台安装MySQL数据库

Windows平台安装Python环境

Python pandas数据分析以及处理的常用功能

Python常用数据库连接以及常用数据操作

你可能感兴趣的:(Python开发笔记,经验分享,python,pandas,数据处理,mysql,excel)