2013-10-01 12 views
83

Czytam zawartość arkusza kalkulacyjnego w pandach. DataNitro ma metodę, która zwraca prostokątny wybór komórek jako listę list. WięcUzyskiwanie listy list do pand DataFrame

table = Cell("A1").table 

daje

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

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

Jestem zajęty pisanie kodu tłumaczyć tym, ale wydaje mi się, że to takie proste użycie, że musi istnieć sposób, aby to zrobić. Nie można znaleźć go w dokumentacji. Jakieś wskazówki do metody, która to uprości?

Odpowiedz

144

Poniżej przedstawiono, co chcesz:

df = DataFrame(table, columns=headers) 
df 

wyjścia

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

z podejściem wytłumaczyć EdChum powyżej wartości na liście są wyświetlane jako wiersze. Aby wyświetlić wartości list jako kolumny w DataFrame zamiast, po prostu użyj transpozycję() w następujący sposób:

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

Wyjście następnie jest:

 Heading1 Heading2 
0   1  3 
1   2  4