2016-06-22 13 views
0

Ive ein Wörterbuch in folgendem Format key[0],key[1], value im bekam versuchen, diese dict in einen Datenrahmen zu setzen und dann diese Datei in eine CSV schreiben. Jetzt versuche ich herauszufinden, wie man den DataFrame formatiert. Ive lesen Sie die docs aber ich kann nicht herausfinden, wie die Rahmen zu formatieren, so dass jede Zeile wie folgtPythons Pandas `from_dict` Formating` to_csv`

column1 column2 column3 
key[0] key[1] value 
key[0] key[1] value 
key[0] key[1] value 

Affectivley id folgendes auszuführen erstellen, um die Formulardaten in der Lage sein mögen. Ich war mit CsvWriter aber ich für Art auf die Taste [0] wollte, als auf die Csv so dachte Pandas Schreiben wäre eine einfache Antwort: P, und hier sind wir lol

for key, value in dict.items(): 
    print key[0],key[1], value 

Antwort

2

Sie können ganz einfach ein Pandas Daten konstruieren Frame aus einer Liste von Tupeln.

d = {(0,1): 'a', (0,2): 'b', (1,2): 'c'} 

data = [(k1,k2,v) for (k1,k2),v in d.items()] 
df = pd.DataFrame(data, columns=['key1', 'key2', 'value']) 
df 

Ausgänge:

key1 key2 value 
0 0 1 a 
1 1 2 c 
2 0 2 b 

dann in eine CSV zu schreiben:

df.to_csv('filePath') 
+0

Arr ok macht absolut Sinn. Wo käme die Sortierung in der ersten Spalte? Während der DF-Erstellung oder beim Schreiben des CSV? – iNoob

+1

@iNoob, können Sie es tun zwischen der Datenerstellung Rahmen und das Schreiben mit 'df = df.sort_values ​​(von = [‚key1‘,‚key2‘]) Datei' –

+1

Ich arbeitete sie gerade aus ging mit 'df. sort_values ​​('Key1', aufsteigend = True, inplace = True) ' – iNoob

Verwandte Themen