Pandas基础07(Csv/Excel/Mysql数据的存储与读取)

Pandas数据加载

在数据科学和机器学习的流程中,数据的加载与存储是非常重要的一环。Pandas是Python中用于数据处理的强大库,它提供了多种方式来加载和保存数据,支持不同的数据格式,如CSV、Excel以及数据库(例如MySQL)。本篇博客将详细介绍如何使用Pandas来加载和保存数据。

基本数据创建与操作

首先,我们通过Pandas创建一个基本的DataFrame,并填充一些随机生成的数据。以下是代码示例:

python 复制代码
import numpy as np
import pandas as pd

# 创建一个DataFrame,包含8行3列,随机整数数据
df = pd.DataFrame(np.random.randint(0, 100, size=(8, 3)), columns=['Chinese', 'Math', 'English'])

# 显示创建的DataFrame
df
3.7.1. CSV 数据加载与存储

CSV(逗号分隔值)是最常见的数据存储格式之一,Pandas提供了简便的API来将数据存储为CSV文件以及从CSV文件加载数据。

1.存储为CSV文件

使用to_csv()方法可以将DataFrame保存为CSV文件。代码如下:

python 复制代码
# 存储为CSV文件
df.to_csv("data.csv", header=True, index=False)

参数说明:

  • header=True: 表示保存列名。
  • index=False: 表示不保存行索引。
2 读取CSV文件

使用read_csv()方法可以读取CSV文件并将其转换为DataFrame。代码如下:

python 复制代码
# 读取CSV文件
df_csv = pd.read_csv("data.csv")

此外,还可以使用sep参数来设置分隔符,默认情况下是逗号(,)。如果数据的分隔符是其他符号(如制表符\t),可以通过修改sep来指定。

3.7.2. Excel 数据加载与存储

Excel文件是另一种常见的数据存储格式,Pandas提供了很方便的方法来处理Excel文件。

1 存储为Excel文件

使用to_excel()方法可以将DataFrame存储为Excel文件。代码如下:

python 复制代码
# 存储为Excel文件
df.to_excel('data.xlsx', sheet_name='score', header=True, index=False)

参数说明:

  • sheet_name='score': 指定工作表的名称。
  • header=True: 表示保存列名。
  • index=False: 表示不保存行索引。
2 读取Excel文件

读取Excel文件时,使用read_excel()方法。代码如下:

python 复制代码
# 读取Excel文件
df_excel = pd.read_excel('data.xlsx')

同样,你可以使用sheet_name来指定要读取的工作表名称。

3.7.3. 从MySQL加载与存储数据

除了文件格式,Pandas还可以直接与数据库(例如MySQL)进行交互。为了从MySQL数据库加载和保存数据,首先需要安装pymysqlsqlalchemy

1 安装依赖

在命令行中执行以下命令来安装所需的库:

复制代码
pip install pymysql -i https://pypi.tuna.tsinghua.edu.cn/simple
pip install sqlalchemy -i https://pypi.tuna.tsinghua.edu.cn/simple
2 存储数据到MySQL

通过SQLAlchemy库,我们可以连接MySQL数据库,并使用to_sql()方法将DataFrame存储到数据库中的指定表。代码如下:

python 复制代码
from sqlalchemy import create_engine, text

# 连接MySQL数据库
conn = create_engine('mysql+pymysql://root:123456@localhost:3306/db_student')

# 将DataFrame存储到数据库
df.to_sql(
    name='score',  # 数据库表名
    con=conn,      # 数据库连接
    index=False,   # 是否保存行索引
    if_exists='append'  # 如果表存在,追加数据
)

参数说明:

  • name='score': 指定要存储的数据库表名。
  • if_exists='append': 如果表已经存在,数据将被追加。
3 从MySQL读取数据

使用read_sql()方法可以执行SQL查询并将结果加载为DataFrame。代码如下:

python 复制代码
# 执行SQL查询,读取MySQL数据
sql = "SELECT * FROM score"
df_mysql = pd.read_sql(sql=text(sql), con=conn)
相关推荐
—Miss. Z—2 小时前
Power Query数据分类整合
excel
kaico20182 小时前
MySQL的索引
数据库·mysql
资生算法程序员_畅想家_剑魔2 小时前
Mysql常见报错解决分享-01-Invalid escape character in string.
数据库·mysql
霖霖总总3 小时前
[小技巧14]MySQL 8.0 系统变量设置全解析:SET GLOBAL、SET PERSIST 与 SET PERSIST_ONLY 的区别与应用
数据库·mysql
alonewolf_994 小时前
深入剖析MySQL索引底层:B+树、联合索引与跳跃扫描原理全解
数据库·b树·mysql
oMcLin4 小时前
如何在Debian 11上通过配置MySQL 8.0的分布式架构,提升跨区域数据同步的效率与延迟?
分布式·mysql·debian
计算机学姐4 小时前
基于SpringBoot的校园资源共享系统【个性化推荐算法+数据可视化统计】
java·vue.js·spring boot·后端·mysql·spring·信息可视化
霖霖总总5 小时前
[小技巧23]全面理解 MySQL 的 WAL 机制:原理、影响与可观测性
数据库·mysql
冰暮流星6 小时前
sql语句之select语句的基本使用
数据库·sql·mysql
开开心心就好6 小时前
系统管理工具,多功能隐私清理文件粉碎工具
java·网络·windows·r语言·电脑·excel·symfony