当前位置: 代码网 > it编程>前端脚本>Python > Pandas数据如何读取与导出

Pandas数据如何读取与导出

2025年01月23日 Python 我要评论
pandas数据读取与导出pandas 是一个强大的 python 库,用于数据处理和分析。它提供了许多函数来读取和导入数据,支持多种文件格式,如 csv、excel、sql 数据库、json 等。以

pandas数据读取与导出

pandas 是一个强大的 python 库,用于数据处理和分析。它提供了许多函数来读取和导入数据,支持多种文件格式,如 csv、excel、sql 数据库、json 等。

以下是一些常用的数据读取和导出方法:

常用方法

格式文件格式读取函数写入(导出)函数
binaryexcelread_excelto_excel
textcsvread_csv read_tableto_csv
textjsonread_jsonto_json
text网页表格htmlread_htmlto_html
text剪切板read_clipboardto_clipboard
sq!lsqlread_sqlto_sql
xmlread_xmlread_xml
textmarkdownto_markdown

其中:

  • 读取函数一般会赋值给一个变量 df, df = pd.read_()
  • 输出函数是将变量自身进行操作并输出 df.to_()

常用函数方法

excel 对象

~ pd.excelfile 对象
~ pd.excelwriter 对象
~ pd.excelwriter 对象的属性和方法

读取数据

~ pd.read_csv()
~ pd.read_excel()
~ pd.json_normalize()
~ pd.read_pickle()
~ pd.read_table()
~ pd.dataframe.from_dict() 从字典创建 dataframe
~ pd.read_clipboard() 从剪贴板读取数据
~ pd.read_json() 读取 json
~ pd.read_sql() 读取数据库数据
~ pd.read_fwf() 读取固定宽度格式文件
~ pd.read_html() 从 html 文档提取表格数据
~ pd.read_parquet() 读取 parquet 文件

导出数据

~ to_csv() 导出为 csv文件
~ to_excel() 导出为 excel 文件
~ to_dict() 输出字典
~ to_pickle() 序列化为 pickle 文件
~ to_json() 转换为 json 格式字符串
~ to_html() 转换为 html 表格格式
~ to_sql() 写入到关系型数据库
~ to_parquet() 保存为 parquet 文件

数据读取

  1. 读取 csv 文件
import pandas as pd
 
df = pd.read_csv('file.csv')
# 可以使用参数来调整读取行为,如分隔符、缺失值标记、列名等
  1. 读取 excel 文件
df = pd.read_excel('file.xlsx', sheet_name='sheet1')
# 可以指定工作表名称或索引,或者使用 sheet_name=none 来读取所有工作表
  1. 从 sql 数据库读取
import sqlite3  # 或其他数据库连接库
 
conn = sqlite3.connect('database.db')
df = pd.read_sql_query('select * from table_name', conn)
conn.close()
# 对于其他数据库,如 mysql、postgresql,需要使用相应的连接库和驱动
  1. 读取 json 文件
df = pd.read_json('file.json')
# 可以使用 orient 参数来指定 json 数据的布局
  1. 读取 html 表格
df = pd.read_html('http://example.com/page_with_table.html')[0]
# read_html 返回一个 dataframe 列表,通常使用索引 [0] 来获取第一个表格
  1. 从剪贴板读取
df = pd.read_clipboard()
# 这对于从 excel 等应用程序中复制数据特别有用

数据导出

  1. 导出到 csv 文件
df.to_csv('output_file.csv', index=false)
# index=false 表示不导出 dataframe 的索引
  1. 导出到 excel 文件
df.to_excel('output_file.xlsx', sheet_name='sheet1', index=false)
# 可以指定工作表名称和其他选项,如引擎(对于较新的 pandas 版本,默认引擎为 'openpyxl')
  1. 导出到 sql 数据库
conn = sqlite3.connect('database.db')
df.to_sql('table_name', conn, if_exists='replace', index=false)
conn.close()
# if_exists 参数可以是 'fail'(如果表存在则引发错误)、'replace'(替换表)、'append'(在表中添加数据)
  1. 导出到 json 文件
df.to_json('output_file.json', orient='records', lines=true)
# orient 参数可以指定 json 数据的布局,lines=true 表示每行是一个 json 对象
  1. 导出到 html 文件
with open('output_file.html', 'w') as f:
    f.write(df.to_html())
# 也可以使用 pandas 提供的 to_html() 方法生成 html 字符串,然后保存到文件中
  1. 导出到 excel 的多个工作表
with pd.excelwriter('output_file_with_sheets.xlsx') as writer:
    df1.to_excel(writer, sheet_name='sheet1', index=false)
    df2.to_excel(writer, sheet_name='sheet2', index=false)
# 使用 excelwriter 上下文管理器可以方便地写入多个工作表

注意事项:

  • 文件路径:确保文件路径正确,并且程序有适当的读写权限。
  • 数据类型:在导出时,注意数据类型的兼容性,特别是当数据包含特殊字符或日期时间类型时。
  • 依赖项:某些导出方法(如到 sql 数据库)可能需要额外的库和数据库驱动。
  • 性能:对于大型数据集,导出到某些格式(如 excel)可能会很慢,并且可能会受到内存限制。在这种情况下,考虑将数据分批导出或使用更适合大数据集的格式(如 csv)。

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持代码网。

(0)

相关文章:

版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站仅提供信息存储服务,不拥有所有权,不承担相关法律责任。 如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2386932994@qq.com 举报,一经查实将立刻删除。

发表评论

验证码:
Copyright © 2017-2025  代码网 保留所有权利. 粤ICP备2024248653号
站长QQ:2386932994 | 联系邮箱:2386932994@qq.com