Jeśli mam następujący DataframeKonwersja grupa pandy przez obiekt do multi-indeksowane Dataframe
>>> df = pd.DataFrame({'Name': ['Bob'] * 3 + ['Alice'] * 3, \
'Destination': ['Athens', 'Rome'] * 3, 'Length': np.random.randint(1, 6, 6)})
>>> df
Destination Length Name
0 Athens 3 Bob
1 Rome 5 Bob
2 Athens 2 Bob
3 Rome 1 Alice
4 Athens 3 Alice
5 Rome 5 Alice
mogę Grupuj według nazwy i przeznaczenia ...
>>> grouped = df.groupby(['Name', 'Destination'])
>>> for nm, gp in grouped:
>>> print nm
>>> print gp
('Alice', 'Athens')
Destination Length Name
4 Athens 3 Alice
('Alice', 'Rome')
Destination Length Name
3 Rome 1 Alice
5 Rome 5 Alice
('Bob', 'Athens')
Destination Length Name
0 Athens 3 Bob
2 Athens 2 Bob
('Bob', 'Rome')
Destination Length Name
1 Rome 5 Bob
ale chciałbym nowy wielo -indexed dataframe z niego, który wygląda mniej więcej tak
Length
Alice Athens 3
Rome 1
Rome 5
Bob Athens 3
Athens 2
Rome 5
wydaje się, że powinien być jakiś sposób, aby zrobić coś podobnego Dataframe(grouped)
, aby uzyskać moją indeksowaną ramkę danych, ale zamiast tego otrzymuję PandasError
("Konstruktor DataFrame nie jest poprawnie wywoływany!").
Jaki jest najprostszy sposób na uzyskanie tego? Ponadto, każdy wie, czy kiedykolwiek będzie możliwość przekazania obiektu groupby do konstruktora, lub jeśli robię to po prostu nie tak?
Dzięki