首页>国内 > 正文

五种常用格式的数据输出,手把手教你用Pandas实现

2022-04-24 18:13:39来源:大数据DT

01 CSV

DataFrame.to_csv方法可以将DataFrame导出为CSV格式的文件,需要传入一个CSV文件名。

df.to_csv("done.csv")df.to_csv("data/done.csv")#可以指定文件目录路径df.to_csv("done.csv",index=False)#不要索引

另外还可以使用sep参数指定分隔符,columns传入一个序列指定列名,编码用encoding传入。如果不需要表头,可以将header设为False。如果文件较大,可以使用compression进行压缩:

#创建一个包含out.csv的压缩文件out.zipcompression_opts=dict(method="zip",archive_name="out.csv")df.to_csv("out.zip",index=False,compression=compression_opts)

02 Excel

将DataFrame导出为Excel格式也很方便,使用DataFrame.to_excel方法即可。要想把DataFrame对象导出,首先要指定一个文件名,这个文件名必须以.xlsx或.xls为扩展名,生成的文件标签名也可以用sheet_name指定。

如果要导出多个DataFrame到一个Excel,可以借助ExcelWriter对象来实现。

#导出,可以指定文件路径df.to_excel("path_to_file.xlsx")#指定sheet名,不要索引df.to_excel("path_to_file.xlsx",sheet_name="Sheet1",index=False)#指定索引名,不合并单元格df.to_excel("path_to_file.xlsx",index_label="label",merge_cells=False)

多个数据的导出如下:

#将多个df分不同sheet导入一个Excel文件中withpd.ExcelWriter("path_to_file.xlsx")aswriter:df1.to_excel(writer,sheet_name="Sheet1")df2.to_excel(writer,sheet_name="Sheet2")

使用指定的Excel导出引擎如下:

#指定操作引擎df.to_excel("path_to_file.xlsx",sheet_name="Sheet1",engine="xlsxwriter")#在"engine"参数中设置ExcelWriter使用的引擎writer=pd.ExcelWriter("path_to_file.xlsx",engine="xlsxwriter")df.to_excel(writer)writer.save()#设置系统引擎frompandasimportoptions#noqa:E402options.io.excel.xlsx.writer="xlsxwriter"df.to_excel("path_to_file.xlsx",sheet_name="Sheet1")

03 HTML

DataFrame.to_html会将DataFrame中的数据组装在HTML代码的table标签中,输入一个字符串,这部分HTML代码可以放在网页中进行展示,也可以作为邮件正文。

print(df.to_html())print(df.to_html(columns=[0]))#输出指定列print(df.to_html(bold_rows=False))#表头不加粗#表格指定样式,支持多个print(df.to_html(classes=["class1","class2"]))

04 数据库(SQL)

将DataFrame中的数据保存到数据库的对应表中:

#需要安装SQLAlchemy库fromsqlalchemyimportcreate_engine#创建数据库对象,SQLite内存模式engine=create_engine("sqlite:///:memory:")#取出表名为data的表数据withengine.connect()asconn,conn.begin():data=pd.read_sql_table("data",conn)#data#将数据写入data.to_sql("data",engine)#大量写入data.to_sql("data_chunked",engine,chunksize=1000)#使用SQL查询pd.read_sql_query("SELECT*FROMdata",engine)

05 Markdown

Markdown是一种常用的技术文档编写语言,Pandas支持输出Markdown格式的字符串,如下:

print(cdf.to_markdown())"""||x|y|z||:---|----:|----:|----:||a|1|2|3||b|4|5|6||c|7|8|9|"""

小结

本文介绍了如何将DataFrame对象数据进行输出,数据经输出、持久化后会成为固定的数据资产,供我们进行归档和分析。

关于作者:李庆辉,数据产品专家,某电商公司数据产品团队负责人,擅长通过数据治理、数据分析、数据化运营提升公司的数据应用水平。精通Python数据科学及Python Web开发,曾独立开发公司的自动化数据分析平台,参与教育部“1+X”数据分析(Python)职业技能等级标准评审。中国人工智能学会会员,企业数字化、数据产品和数据分析讲师,在个人网站“盖若”上编写的技术和产品教程广受欢迎。

本书摘编自《深入浅出Pandas:利用Python进行数据处理与分析》,机械工业出版社华章公司2021年出版。转载请与我们取得授权。

关键词: 数据分析 可以使用 人工智能 可以借助 开发公司

相关新闻

Copyright 2015-2020   三好网  版权所有