4.1 读写不同数据源的数据

文章介绍了如何使用Python的pandas库读取和存储不同类型的数据,包括从数据库(如MySQL)中读取和写入数据,读写文本文件(CSV)以及处理Excel文件。pandas提供的read_sql_table,read_sql,to_sql函数用于数据库交互,read_table,read_csv用于读取文本文件,而to_csv,to_excel则用于数据的导出。
摘要由CSDN通过智能技术生成

4.1.1 读写数据库数据

1、数据库数据获取

pandas提供了读取与存储关系型数据库数据的函数与方法。除了pandas库外,还需要使用SQLAlchemy库建立对应的数据库连接。SQLAlchemy配合相应数据库的Python连接工具(例如MySQL数据库需要安装mysqlclient或者pymysql库),使用create_engine函数,建立一个数据库连接。
from sqlalchemy import create_engine ## 创建一个mysql连接器,
engine = create_engine('mysql+pymysql://root:123456@127.0.0.1:3306/test?charset=utf8’)
usarrest = pd.read_sql_table(‘usarrest’, con = engine) # 使用read_sql_table读取订单详情表
usarrest2 = pd.read_sql(‘select * from usarrest’, con = engine) # 使用read_sql读取订单详情表

pandas.read_sql_table(table_name, con, schema = None, index_col= None, coerce_float = True, columns = None)只能读取数据库的某一个表格,不能实现查询的操作。
pandas.read_sql_query(sql, con, index_col = None, coerce_float = True)只能实现查询操作,不能直接读取数据库中的某个表。
pandas.read_sql(sql, con, index_col = None, coerce_float = True, columns = None)是两者的综合,既能读取数据库中的某一个表,又能实现查询操作。

2、数据库数据存储

DataFrame.to_sql(name, con, if_exists = ‘fail’, index = True, index_label = None, dtype = None)

4.1.2 读写文本文件

1、文本文件读取

CSV是一种用分隔符分隔的文件格式,又被称为字符分隔文件

pandas.read_table(filepath, sep=‘\t’, header = ‘infer’, names = None, index_col = None, dtype = None, encoding = utf-8, engine = None, nrows = None)
pandas.read_csv(filepath, sep = ‘,’, header = ‘infer’, names = None, index_col = None, dtype = None, encoding=utf-8, engine=None, nrows=None)
在这里插入图片描述

# 文本文件读取
import pandas as pd
data1 = pd.read_table('E:/Input/info.csv')
print(data1)
data = pd.read_csv('E:/Input/info.csv')
print(data)

在这里插入图片描述

2、文本文件存储

文本文件的存储和读取类似,结构化数据可以通过pandas中的to_csv函数实现以csv文件格式存储文件。
DataFrame.to_csv(path_or_buf=None, sep=‘,’, na_rep=‘’, columns=None, header=True,
index=True, index_label=None, mode=‘w’, encoding=None)
在这里插入图片描述

# 文本文件存储
data.to_csv('E:/Output/out.csv', index=False)

4.1.3 读写Excel文件

1、Excel文件读取

pandas提供了read_excel函数来读取“xls”“xlsx”两种Excel文件
pandas.read_excel(io, sheetname=0, header=0, index_col=None, names=None, dtype=None)在这里插入图片描述

# Excel文件读取
data2 = pd.read_excel('E:/Input/info_xlsx.xlsx')
print(data2.head(3))

在这里插入图片描述

2、Excel文件存储

将文件存储为Excel文件,可以使用to_excel方法。其语法格式如下。
DataFrame.to_excel(excel_writer=None, sheetname=‘None’, na_rep=‘’, header=True, index=True, index_label=None, mode=‘w’, encoding=None)
与to_csv方法的常用参数基本一致,区别之处在于指定存储文件的文件路径参数名称为excel_writer,并且没有sep参数,增加了一个sheetnames参数用来指定存储的Excel sheet的名称,默认为sheet1。

data2.to_excel('E:/Output/out_excel.xlsx')

完整代码

import pandas as pd
from pandas import DataFrame

# 文本文件读取
data1 = pd.read_table('E:/Input/info.csv')
print(data1.head(3))  # 打印前三行
data = pd.read_csv('E:/Input/info.csv')
print(data.head(3))
# 文本文件存储
data.to_csv('E:/Output/out.csv', index=False)
# Excel文件读取
data2 = pd.read_excel('E:/Input/info_xlsx.xlsx')
print(data2.head(3))
# Excel文件存储
data2.to_excel('E:/Output/out_excel.xlsx')
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

清木!

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值