Was ist der Python-Weg, um einen Datenrahmen um mehr Indexbereiche zu schneiden (z. B. durch 10:12
und 25:28
)? Ich möchte dies in einem eleganteren Weg:Python pandas Schnitt Datenfeld durch mehrere Indexbereiche
df = pd.DataFrame({'a':range(10,100)})
df.iloc[[i for i in range(10,12)] + [i for i in range(25,28)]]
Ergebnis:
a
10 20
11 21
25 35
26 36
27 37
So etwas wäre eleganter:
df.iloc[(10:12, 25:28)]
Thank you!
Es wird nicht viel prägnanter als dies erhalten. 'np.r_' wurde für genau diesen Zweck gebaut. Und ich habe etwas gelernt. Ich wünschte, ich könnte +2. – piRSquared
eine Sache zu beachten: Um negative Indizierung (dh das Äquivalent von 'df.iloc [-2:]') zu bekommen, müssen Sie eine Null einschließen: 'df.iloc [pd.np.r _ [: 2, -2: 0]] ' –