Я создаю pandas dataframe с Multiindex следующим образом
import pandas as pd
import numpy as np
df = pd.DataFrame(columns=['time','features','A','B','C'])
df['time'] = np.repeat(np.arange(5), 3)
df['features'] = np.tile(['p','q','r'],5)
df[['A','B','C']] = np.random.rand(15,3)
df = df.set_index(['time','features'])
, который выглядит так
print(df)
A B C
time features
0 p 0.177568 0.960215 0.846926
q 0.664585 0.539106 0.978313
r 0.558021 0.695074 0.875075
1 p 0.402879 0.210938 0.892944
q 0.908289 0.470084 0.132018
r 0.433328 0.339444 0.812464
2 p 0.559681 0.121496 0.390474
q 0.255349 0.951172 0.925202
r 0.207428 0.517507 0.799284
3 p 0.547650 0.115945 0.283236
q 0.077061 0.604040 0.131754
r 0.756067 0.770017 0.878808
4 p 0.057454 0.061359 0.423341
q 0.726294 0.401679 0.023117
r 0.391882 0.700574 0.280084
для этого случая
print(df.loc[3:4])
A B C
time features
3 p 0.547650 0.115945 0.283236
q 0.077061 0.604040 0.131754
r 0.756067 0.770017 0.878808
4 p 0.057454 0.061359 0.423341
q 0.726294 0.401679 0.023117
r 0.391882 0.700574 0.280084
работаетно ни df[-2:]
, ни df.loc[-2:]
не работают. Как я могу получить последние n строк с отрицательной индексацией для мультииндексного фрейма данных?