gpt4 book ai didi

Python Pandas read_csv 跳过行但保留标题

转载 作者:IT老高 更新时间:2023-10-28 20:21:42 24 4
gpt4 key购买 nike

我无法弄清楚如何跳过 csv 文件中的 n 行但保留第 1 行的标题。

我想要做的是迭代但保留第一行的标题。 skiprows 使标题成为跳过行之后的第一行。这样做的最佳方法是什么?

data = pd.read_csv('test.csv', sep='|', header=0, skiprows=10, nrows=10)

最佳答案

您可以将行号列表传递给 skiprows 而不是整数。

通过为函数提供整数 10,您只是跳过了前 10 行。

要保留第一行 0(作为标题)然后跳过其他所有内容直到第 10 行,您可以这样写:

pd.read_csv('test.csv', sep='|', skiprows=range(1, 10))

使用 read_csv

跳过行的其他方法

控制 read_csv 使用哪些行的两种主要方法是 headerskiprows 参数。

假设我们有以下包含一列的 CSV 文件:

a
b
c
d
e
f

在下面的每个示例中,此文件为 f = io.StringIO("\n".join("abcdef"))

  • 将所有行作为值读取(无标题,默认为整数)

    >>> pd.read_csv(f, header=None)
    0
    0 a
    1 b
    2 c
    3 d
    4 e
    5 f
  • 使用特定的行作为标题(跳过之前的所有行):

    >>> pd.read_csv(f, header=3)
    d
    0 e
    1 f
  • 使用多行作为创建 MultiIndex 的标题(跳过最后指定标题行之前的所有行):

    >>> pd.read_csv(f, header=[2, 4])                                                                                                                                                                        
    c
    e
    0 f
  • 从文件开头跳过 N 行(第一行没有跳过的是标题):

    >>> pd.read_csv(f, skiprows=3)                                                                                                                                                                      
    d
    0 e
    1 f
  • 通过给出行索引来跳过一个或多个行(第一行没有跳过的是标题):

    >>> pd.read_csv(f, skiprows=[2, 4])                                                                                                                                                                      
    a
    0 b
    1 d
    2 f

关于Python Pandas read_csv 跳过行但保留标题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27325652/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com