从Excel导入数据到Python时排除第一行

22

我有一段部分代码,可以将Excel导入Python作为字符串。我如何在将数据从Excel导入Python时排除第一行?

import pandas as pd
data = pd.read_excel(".xlsx", parse_cols="A,C,E,G, I, K, M, O, Q, S, U, W, Y, AA, AC, AE, AG, AI, AK, AM, AO, AQ, AS, AU, AW, AY, BA, BC, BE, BG, BI, BK, BM, BO, BQ, BS, BU, BW, BY, CA, CC, CE, CG, CI, CK, CM, CO, CQ, CS, CU, CW, CY, DA, DC, DE, DG, DI, DK, DM, DO, DQ, DS, DU, DW, DY, EA, EC, DE, EG, EI, EK, EM, EO, EQ, ES, EU, EW, EY")
data = data.to_string()

你是想避免在 data 中的表头吗?还是你在 Excel 中有不必要的行。使用 skiprows() 来避免读取表头可能不是正确的方法。你可以使用 data.to_string(header=False) 来避免表头。 - AChampion
只需要 skiprows() 就可以了,谢谢。 - Ajml
3个回答

47

对于pd.read_excel方法的pandas文档提到了一个skiprows参数,您可以使用它来排除Excel文件的第一行。

示例

import pandas as pd
data = pd.read_excel("file.xlsx", parse_cols="A,C,E,G", skiprows=[0])

来源:Pandas文档


嗨@Onel Harrison,你能帮忙回答这个问题吗?https://stackoverflow.com/questions/46751996/selecting-and-importing-only-certain-columns-from-excel-for-importing - Ajml
2
如果你想跳过前两行,则可以使用以下代码:pd.read_excel("file.xlsx", parse_cols="A,C,E,G", skiprows=[0,1]) - msklc
可能是版本问题,但是我使用以下代码代替数组成功了:data = pd.read_excel("file.xlsx", parse_cols="A,C,E,G", skiprows=1) - pfrank

2

对于read_excel函数,将值分配给skiprows参数。它将忽略标题。


3
注意:skiprows并不意味着不从第一行开始创建标题,使用header=None可以避免从数据中创建标题。 - AChampion

0

parse_cols参数自版本0.21.0起已弃用。改为使用usecols

usecols:int或列表,默认为None

  • 如果为None,则解析所有列,如果为int,则表示要解析的最后一列
  • 如果为int列表,则表示要解析的列编号列表
  • 如果为字符串,则表示逗号分隔的Excel列字母和列范围(例如“A:E”或“A,C,E:F”)。 范围包括两侧。

要排除第一行,请使用skiprows =[0]参数。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接