2013-10-01 53 views
83

Tôi đang đọc nội dung của bảng tính thành gấu trúc. DataNitro có một phương thức trả về một vùng chọn hình chữ nhật của các ô như một danh sách các danh sách. Vì vậy,Lấy danh sách các danh sách vào gấu trúc DataFrame

table = Cell("A1").table 

cho

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

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

Tôi bận rộn viết code để dịch này, nhưng tôi đoán là nó là như vậy việc sử dụng đơn giản mà phải có phương pháp để làm điều này. Cant dường như tìm thấy nó trong tài liệu. Bất kỳ con trỏ đến phương pháp mà sẽ đơn giản hóa điều này?

Trả lời

144

Sau đây mang đến cho những gì bạn muốn:

df = DataFrame(table, columns=headers) 
df 

đầu ra

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

Với cách tiếp cận giải thích bằng EdChum trên, các giá trị trong danh sách được hiển thị như hàng. Để hiển thị các giá trị của danh sách dưới dạng cột trong DataFrame thay vào đó, chỉ cần sử dụng transpose() như sau:

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

Kết quả sau đó là:

 Heading1 Heading2 
0   1  3 
1   2  4 
Các vấn đề liên quan