【问题标题】:Python Pandas reads_csv skip first x and last y rowsPython Pandas read_csv 跳过前 x 行和最后 y 行
【发布时间】:2015-07-27 18:38:55
【问题描述】:

我想我可能在这里遗漏了一些明显的东西,但我是 python 和 pandas 的新手。我正在阅读一个大文本文件,只想使用范围内的行(61,75496)。我可以跳过前 60 行

keywords = pd.read_csv('keywords.list', sep='\t', skiprows=60)

我怎样才能只包含这些值之间的行?遗憾的是没有 userows 参数。

有没有类似的东西

range(start, stop, start, stop)?

【问题讨论】:

    标签: python csv pandas


    【解决方案1】:

    也许您可以使用nrows 参数来给出要读取的行数。

    来自documentation -

    nrows : int, default None
    Number of rows of file to read. Useful for reading pieces of large files
    

    代码-

    keywords = pd.read_csv('keywords.list', sep='\t', skiprows=60,nrows=75436) #Here 75436 is 75496 - 60
    

    【讨论】:

    • 谢谢!我没有意识到 nrows 可以与这样的 skiprows 结合使用。
    【解决方案2】:

    documentation,您可以使用跳过前几行

    skiprows = X

    其中 X 是一个整数。如果有标题,例如,文件中有几行,您也可以直接跳到标题使用

    header = X

    从文件底部开始跳过行并向上计数使用

    skipfooter = X

    一起将标题设置为第 3 行(并跳过上面的行)并忽略底部的 4 行:pd.read_csv('path/or/url/to/file.csv', skiprows=3, skipfooter=4)

    【讨论】:

      【解决方案3】:

      可以使用nrows参数

      keywords = pd.read_csv('keywords.list', sep='\t', skiprows=60, nrows=(74596-60))
      

      【讨论】:

        猜你喜欢
        • 2015-02-04
        • 2019-01-02
        • 2020-08-29
        • 1970-01-01
        • 2014-03-22
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多