2016-12-16 7 views
1

Wie erstellt man ein Wörterbuch aus Spalten von Pandas Dataframe. hier ist Testcode:dict aus Spalten von Pandas Datenframe-Spalten

import pandas as pd 
df = pd.DataFrame({ 
    'c0': ['A','A','B'], 
    'c1': ['b','c','d'], 
    'c2': [1, 3,4], 
    'c3': [5,7,8]}) 

Ausgang:

c0 c1 c2 c3 
0 A b 1 5 
1 A c 3 7 
2 B d 4 8 

Ich möchte ein Wörterbuch aus, sagen wir, Schlüssel erhalten: (c0, c1) und Wert: (c2)

{('A', 'b'): 1, ('A', 'c'): 3, ('B', 'd'): 4} 

Antwort

3

Sieverwenden könnenmit Series.to_dict-MutiIndex schafft tuples:

print (df.set_index(['c0','c1'])['c2'].to_dict()) 
{('B', 'd'): 4, ('A', 'b'): 1, ('A', 'c'): 3} 
0

Hier ist, wie ich es tat

dict(zip(zip(df['c0'], df['c1']), df['c2'])) 
Verwandte Themen