2013-10-01 19 views
83

Sto leggendo i contenuti di un foglio di calcolo in panda. DataNitro ha un metodo che restituisce una selezione rettangolare di celle come un elenco di elenchi. CosìOttenere l'elenco delle liste in Panda DataFrame

table = Cell("A1").table 

table = [['Heading1', 'Heading2'], [1 , 2], [3, 4]] 

headers = table.pop(0) # gives the headers as list and leaves data 

Io sono la scrittura di codice impegnato a tradurre questo, ma la mia ipotesi è che si tratta di un semplice uso in modo tale che ci deve essere metodo per fare questo. Non riesco a trovarlo nella documentazione. Qualche suggerimento per il metodo che semplificherebbe questo?

risposta

144

Di seguito dà ciò che si vuole:

df = DataFrame(table, columns=headers) 
df 

uscite

Out[7]: 
    Heading1 Heading2 
0   1   2 
1   3   4 
48

Con l'approccio spiegato da EdChum sopra, i valori nella lista vengono visualizzati come righe. Per mostrare i valori delle liste come colonne nella dataframe invece, è sufficiente utilizzare transpose() come segue:

table = [[1 , 2], [3, 4]] 
df = DataFrame(table) 
df = df.transpose() 
df.columns = ['Heading1', 'Heading2'] 

L'uscita quindi è:

 Heading1 Heading2 
0   1  3 
1   2  4