Панды не снижают уровень мультииндекса при получении первого значенияPython

Программы на Python
Ответить
Anonymous
 Панды не снижают уровень мультииндекса при получении первого значения

Сообщение Anonymous »

Пример

Код: Выделить всё

import pandas as pd
import numpy as np
t=pd.DataFrame({'c1': {(1, 1, 1): 1, (1, 2, 9): 2, (2, 1, 3): np.nan, (2, 1, 7): 4, (4, 2, 2): 6}, 'c2': {(1, 1, 1): 3, (1, 2, 9): 3, (2, 1, 3): 3, (2, 1, 7): 1, (4, 2, 2): 2}})
print(t["c1"].groupby(level=[0,1]).first())
вывод

Код: Выделить всё

1  1    1.0
2    2.0
2  1    4.0
4  2    6.0
Name: c1, dtype: float64
Желательно:

Код: Выделить всё

1  1  1    1.0
2  9    2.0
2  1  7    4.0
4  2  2    6.0
Name: c1, dtype: float64

Ответ не обязательно должен быть групповым, я чувствую, что должен быть способ использовать срез в iloc индекса, который учитывает nans

Подробнее здесь: https://stackoverflow.com/questions/792 ... irst-value
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Python»