Python Pandas:如何只读取前n行的CSV文件?

ben*_*nsw 57 python csv file-io pandas

我有一个非常大的数据集,我无法读取整个数据集.所以,我想只读一部分进行训练,但我不知道该怎么做.任何想法将不胜感激.

smc*_*mci 94

如果您只想读取前999,999(非标题)行:

read_csv(..., nrows=999999)
Run Code Online (Sandbox Code Playgroud)

如果您只想读取1,000,000 ... 1,999,999行

read_csv(..., skiprows=1000000, nrows=999999)
Run Code Online (Sandbox Code Playgroud)

nrows:int,default无要读取的文件行数.用于阅读大型文件*

skiprows:list-like或integer要在文件开头跳过(0-indexed)或要跳过的行数(int)的行号

对于大文件,您可能还想使用chunksize:

chunksize:int,default无返回TextFileReader对象进行迭代

pandas.io.parsers.read_csv文档

  • 请注意,如果您的文件在第 0 行中有列名称,则 Skiprows 会采用列表或范围。`read_csv('path', ...,skiprows=[1, 1000000], nrows=999999)` 或 `read_csv('path', ...,skiprows=range(1, 1000000), nrows=999999)` (3认同)