Pandas:如何获取索引之间的行?

ale*_*ysh 4 python indexing rows pandas

今天是个好日子。我的问题是:我无法获取多行之间的行(数据)。我有一本 excel 书,有 21 张纸。每张桌子上的每张桌子都有一些不同的变化。桌子没有头(制造它的人都是白痴)。但表中第一列和第二列有相同的值。所以,我得到了它们的索引,但如何获取它们之间的行? 在此输入图像描述

import pandas as pd

file_path = r"./files/menu.xlsx"

df = pd.read_excel(file_path)
xl = pd.ExcelFile(file_path).sheet_names
breakfast = df.loc[df['Unnamed: 0'] == 'breakfast'].index[0]   # index is "5"
dinner = df.loc[df['Unnamed: 0'] == 'dinner'].index[0]         # index is "14"
heads = df.iloc[[int(breakfast) - 1]]
Run Code Online (Sandbox Code Playgroud)

小智 8

start:end您可以在操作中使用范围iloc()来指定开始和结束索引。请记住,开始索引包含在结果中,而结束索引被排除:

rows_between = df.iloc[int(breakfast)+1:int(dinner)]
Run Code Online (Sandbox Code Playgroud)