В цепочечных вызовах методов может быть полезно знать трюк, который можно вызвать set_index
с несуществующими метками, если вы оберните метки, которые хотите установить в другом списке.
>>> df.set_index([[1, 2, 3, 4]])
a b
1 1 2
2 2 3
3 3 4
4 4 5
>>>
>>> df.set_index([['w', 'x', 'y', 'z']])
a b
w 1 2
x 2 3
y 3 4
z 4 5
Я действительно не знаю почему это работает.Глядя на документацию set_index
, я думаю, что это особый случай создания мультииндекса с одним уровнем, как в последнем примере из документации
df.set_index([[1, 2, 3, 4], 'year'])
но без второго элемента 'year'
.