我正在创建一个包含多索引的熊猫数据帧,方法如下
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行?