pandas.read_csv() 是处理 CSV 文件的核心函数,其丰富的参数可显著提升数据加载效率。以下是 6 个实用参数的详细说明:
1. skiprows- 功能:跳过文件开头的指定行数(从 0 开始计数)。
- 适用场景:忽略文件头部的元数据或注释行。
- 示例:df = pd.read_csv('dummy.csv', skiprows=8) # 跳过前8行
2. comment- 功能:指定注释字符,跳过以该字符开头的行。
- 适用场景:自动过滤以特定符号(如 #)标记的注释行。
- 示例:df = pd.read_csv('dummy.csv', comment='#') # 跳过所有以#开头的行
3. nrows- 功能:仅读取文件开头的前 n 行(在 skiprows 和 comment 处理后生效)。
- 适用场景:快速加载大型文件的局部数据以进行预览或测试。
- 示例:df = pd.read_csv('dummy.csv', comment='#', nrows=5) # 读取过滤后的前5行
4. dtype- 功能:显式指定列的数据类型,避免自动推断错误。
- 适用场景:确保列类型符合预期(如将字符串列设为 string 类型)。
- 示例:df = pd.read_csv('dummy.csv', dtype={'name': 'string'}) # 强制name列为字符串
5. parse_dates- 功能:自动解析日期字符串为 datetime 类型。
- 适用场景:处理包含日期时间的数据,便于后续时间序列分析。
- 示例:df = pd.read_csv('dummy.csv', parse_dates=['date']) # 将date列转为datetime
6. skipfooter- 功能:跳过文件末尾的指定行数(需配合 engine='python' 使用)。
- 适用场景:忽略文件底部的冗余信息(如日志或汇总行)。
- 示例:df = pd.read_csv('dummy.csv', skipfooter=1, engine='python') # 跳过末尾1行
总结这些参数通过灵活组合,可高效处理以下问题:
- 跳过无关行:skiprows + comment
- 局部加载:nrows
- 类型控制:dtype + parse_dates
- 尾部清理:skipfooter
合理使用这些参数能显著减少数据清洗步骤,提升分析效率。