Jaki jest pythonic sposób, aby pokroić ramkę danych przez więcej zakresów indeksów (np. Przez 10:12
i 25:28
)? chcę to w bardziej elegancki sposób:Python pandas plastry ramka danych przez wiele zakresów indeksu
df = pd.DataFrame({'a':range(10,100)})
df.iloc[[i for i in range(10,12)] + [i for i in range(25,28)]]
Wynik:
a
10 20
11 21
25 35
26 36
27 37
Coś takiego byłoby bardziej eleganckie:
df.iloc[(10:12, 25:28)]
dziękuję!
Nie robi się bardziej zwięzły niż ten. 'np.r_' został zbudowany właśnie w tym celu. I nauczyłem się czegoś. Chciałbym móc +2. – piRSquared
jedna rzecz do zapamiętania: aby uzyskać indeksowanie ujemne (tj. Odpowiednik 'df.iloc [-2:]'), musisz uwzględnić zero: 'df.iloc [pd.np.r _ [: 2, -2: 0]] ' –