Ich bin mit Python 3.6 und Pandas 0.19.2 und haben einen Datenrahmen, die wie folgt aussieht konvertieren:Wie Pandas Datenrahmen, um verschachtelte Wörterbuch
Name Chain Food Healthy
George McDonalds burger False
George KFC chicken False
John Wendys burger False
John McDonalds salad True
ich diesen Datenrahmen in eine dict verwandeln wollen, die wie folgt aussieht :
health_data = {'George': {'McDonalds': {'Food': 'burger', 'Healthy':False},
'KFC': {'Food': 'chicken', 'Healthy':False}},
'John': {'Wendys': {'Food': 'burger', 'Healthy':False},
'McDonalds': {'Food': 'salad', 'Healthy': True}}}
Meine Gedanken sind so weit:
- Verwenden
df.groupby
gruppieren die Namen Spalte - Verwenden
df.to_dict()
die Datenrahmen in ein Wörterbuch nach dem Vorbild der zu transformieren:health_data = input_data.set_index('Chain').T.to_dict()
Gedanken? Danke im Voraus für die Hilfe.
Thanks so much! Das hat perfekt funktioniert. Eine kleine Frage: Was macht die "Kette", "Essen", "gesund"]] Teil der Antwort? – MRR
Es sind Filterspalten, aber wenn keine anderen Spalten in 'df' vorhanden sind, kann es vereinfacht werden wie' df.groupby ('Name'). Apply (Lambda x: x.set_index ('Kette'). To_dict (orient = ' index ')). to_dict() ' – jezrael