我有一个嵌套列表的数据结构。大熊猫DataFrame中的每个单元格都应有一个嵌套列表。
我尝试了以下方法;
首先,我有一个标题列表:
real device
然后我有了我的数据结构:
Computers Ip address
我要实现的是创建一个pandas数据框,对于数据结构中的第6个项目,我们在pandas数据框中开始一个新行。在上面的示例中,这意味着将有两行六列。
到目前为止,我已经尝试过以下内容;
根据数据结构的长度生成行索引:
headings = ["heading1", "heading2", "heading3", "heading4", "heading5", "heading6"]
然后我尝试使用列vs索引来生成数据框:
data_list = [[foo, bar], [foo1, bar1], [foo2, bar2], [foo3, bar3], [foo4, bar4], [foo5, bar5], [bar, foo], [bar1, foo1], [bar2, foo2], [bar3, foo3], [bar4, foo4], [bar5, foo5]]
在这种情况下,出现以下错误:
idx =[i for i in range((len(data_list) / 6))]
我的问题是,如何在嵌套列表中每第6个项目开始新的一行?
答案 0 :(得分:0)
您的data_list为列表格式,将其转换为numpy数组
import numpy as np
data_list = np.array(data_list)
现在使用重塑方法将数据更改为2行6列
data_list = data_list.reshape([2,6,2])
输出:
array([[['foo', 'bar'],
['foo1', 'bar1'],
['foo2', 'bar2'],
['foo3', 'bar3'],
['foo4', 'bar4'],
['foo5', 'bar5']],
[['bar', 'foo'],
['bar1', 'foo1'],
['bar2', 'foo2'],
['bar3', 'foo3'],
['bar4', 'foo4'],
['bar5', 'foo5']]], dtype='<U4')