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)
相关推荐
身如柳絮随风扬7 小时前
MySQL核心知识
数据库·mysql
551只玄猫8 小时前
【数据库原理 实验报告1】创建和管理数据库
数据库·sql·学习·mysql·课程设计·实验报告·数据库原理
q5431470878 小时前
MySQL SQL100道基础练习题
数据库·mysql
zhoupenghui1688 小时前
mysql 中如果条件where中有or,则要求or两边的字段都必须有索引,否则不能用到索引, 为什么?
数据库·mysql·索引
eggwyw9 小时前
完美解决phpstudy安装后mysql无法启动
数据库·mysql
java修仙传10 小时前
MySQL 事务隔离级别详解
数据库·mysql·oracle
Irissgwe10 小时前
MySQL存储过程和触发器专题
数据库·mysql·oracle
skiy12 小时前
MySQL Workbench菜单汉化为中文
android·数据库·mysql
创世宇图13 小时前
Alibaba Cloud Linux 安装生产环境-mysql
linux·mysql
重庆小透明14 小时前
【搞定面试之mysql】第一篇:mysql的优化和索引
mysql·面试·职场和发展