Python学习:Pandas库使用(二)之读写Excel文件——read_excel()和to_excel()函数及其参数详解

在Python的Pandas库中,读取和写入Excel文件主要使用read_excelto_excel函数。以下是详细用法和示例:

1. 读取Excel文件:pd.read_excel()

import pandas as pd

# 读取Excel文件
df = pd.read_excel('文件路径.xlsx', sheet_name='Sheet1', header=0, usecols='A:C', skiprows=1)
参数说明:
  • io:

    • 含义: Excel文件的路径或文件对象。
    • 类型: str 或 ExcelFile对象。
    • 示例: 'data.xlsx'pd.ExcelFile('data.xlsx').
  • sheet_name:

    • 含义: 要读取的工作表名称或索引。
    • 类型: str, int, list, 或 None。
    • 可选值: 默认0(第一个工作表),可以是工作表名称(如 'Sheet1')或工作表索引(如 0)。
    • 示例: 'Sheet1'1.
  • header:

    • 含义: 用作列名的行索引。
    • 类型: int, list of int 或 None。
    • 可选值: 默认0;可以是指定的行数,或将其设为None表示没有列名。
    • 示例: 0[0, 1]
  • names:

    • 含义: 自定义列名。
    • 类型: list。
    • 可选值: 任何列名的列表。
    • 示例: ['Name', 'Age', 'Salary']
  • index_col:

    • 含义: 指定作为行索引的列。
    • 类型: int, str, 或 list of int/str。
    • 可选值: 可以是列的名称或索引。
    • 示例: 0'ID'
  • usecols:

    • 含义: 要读取的列。
    • 类型: str, list of str, 或 callable。
    • 可选值: 可以指定列的范围(如 'A:C')或列名称。
    • 示例: 'A:C'['A', 'B']
  • skiprows:

    • 含义: 跳过的行数或行号。
    • 类型: int, list of int。
    • 可选值: 默认0;可以是要跳过的行数或行号列表。
    • 示例: 1[0, 2, 3]
  • nrows:

    • 含义: 读取的行数。
    • 类型: int。
    • 可选值: 读取前N行。
    • 示例: 10(读取前10行)。
  • na_filter:

    • 含义: 是否过滤NA值。
    • 类型: bool。
    • 可选值: 默认True;可以设置为False以保留NA。
    • 示例: False
  • parse_dates:

    • 含义: 指定哪些列应解析为日期。
    • 类型: bool, str, list of str, 或 dict。
    • 可选值: 默认False。
    • 示例: ['Date']
  • date_parser:

    • 含义: 用于解析日期的函数。
    • 类型: function。
    • 可选值: 可以是自定义的日期解析函数。
    • 示例: lambda x: pd.to_datetime(x)
  • comment:

    • 含义: 忽略以此字符开头的行。
    • 类型: str。
    • 可选值: 默认None。
    • 示例: '#'
pd.read_excel(io, sheet_name=0, header=0, names=None, index_col=None, usecols=None,
               squeeze=False, dtype=None, engine=None, converters=None, 
               true_values=None, false_values=None, skiprows=None, 
               nrows=None, na_filter=True, verbose=False, 
               parse_dates=False, date_parser=None, 
               thousands=None, comment=None, skipfooter=0, 
               convert_float=True, mangle_dupe_cols=True, 
               storage_options=None)

2. 写入Excel文件:DataFrame.to_excel()

# 将DataFrame写入Excel文件
df.to_excel('输出文件路径.xlsx', sheet_name='Sheet1', index=False, header=True)
参数说明:
  • excel_writer:

    • 含义: 输出文件的路径或ExcelWriter对象。
    • 类型: str 或 ExcelWriter对象。
    • 示例: 'output.xlsx'
  • sheet_name:

    • 含义: 要写入的工作表名称。
    • 类型: str。
    • 可选值: 默认’Sheet1’。
    • 示例: 'Sales_Data'
  • na_rep:

    • 含义: 替换缺失值的字符串。
    • 类型: str。
    • 可选值: 默认为空字符串。
    • 示例: 'NA'
  • float_format:

    • 含义: 浮点数格式。
    • 类型: str。
    • 可选值: 例如 '%.2f'
    • 示例: '%.2f'
  • header:

    • 含义: 是否写入列名。
    • 类型: bool 或 list。
    • 可选值: 默认True。
    • 示例: True['Column1', 'Column2']
  • index:

    • 含义: 是否写入行索引。
    • 类型: bool。
    • 可选值: 默认True。
    • 示例: False
  • index_label:

    • 含义: 行索引的列名。
    • 类型: str 或 list。
    • 可选值: 默认None。
    • 示例: 'Index'
  • startrow:

    • 含义: 开始写入的行数。
    • 类型: int。
    • 可选值: 默认0。
    • 示例: 1(从第二行开始)。
  • startcol:

    • 含义: 开始写入的列数。
    • 类型: int。
    • 可选值: 默认0。
    • 示例: 1(从第二列开始)。
  • merge_cells:

    • 含义: 是否合并单元格。
    • 类型: bool。
    • 可选值: 默认True。
    • 示例: False
  • encoding:

    • 含义: 文件编码。
    • 类型: str。
    • 可选值: 默认为None。
    • 示例: 'utf-8'
  • date_format:

    • 含义: 日期格式。
    • 类型: str。
    • 可选值: 例如 'YYYY-MM-DD'
    • 示例: 'YYYY-MM-DD'
DataFrame.to_excel(excel_writer, sheet_name='Sheet1', na_rep='', float_format=None,
                    header=True, index=True, index_label=None, startrow=0, 
                    startcol=0, engine=None, merge_cells=True, 
                    encoding=None, inf_rep='inf', 
                    date_format=None, dual_column=False, 
                    store_mode=None, **kwargs)

简单示例

读取示例
df = pd.read_excel('data.xlsx', sheet_name='Sales', usecols='A:D', skiprows=1)
写入示例
df.to_excel('sales_output.xlsx', sheet_name='Sales_Summary', index=False)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值