You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

为何Pandas DataFrame长度大于CSV文件行数?

CSV行数与Pandas读取后DataFrame长度不一致的原因分析

问题背景

我从Kaggle下载了TripAdvisor 2023年评论数据集,本地保存的CSV文件显示有147577行,但用Pandas读取后生成的DataFrame长度为147581。读取代码如下:

import pandas as pd

df = pd.read_csv(r"C:\Users\marcel\Documents\New_Delhi_reviews.csv")

print(len(df))

输出结果为147581,想知道造成该差异的原因及是否存在理解误区。

可能的原因

  • 统计逻辑差异:你看到的CSV行数是文本层面按换行符的计数,而len(df)统计的是解析后的数据记录数。如果CSV里存在未用引号包裹的多行内容(比如评论里的换行),Pandas会把这些换行误判为新的数据行,导致DataFrame行数变多。
  • 空行处理差异:部分工具统计CSV行数时会忽略末尾空行或格式无效的行,但Pandas默认会读取这些行(只要符合CSV基础格式),计入DataFrame的行数统计。
  • 文件异常问题:下载过程中文件若损坏,或者编码不匹配,可能导致Pandas解析时出现偏差,误将部分内容识别为新的数据行。

理解误区说明

你可能默认CSV的文本行数和DataFrame的数据记录数完全等价,但两者统计逻辑不同:CSV的“行”是文本换行分隔的单元,而DataFrame的“行”是经过解析后的结构化数据记录。当存在多行字段、空行或解析异常时,两者计数就会出现偏差。

内容的提问来源于stack exchange,提问作者Marcel

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.20 17:15:00