我有一个列表:
list1= [[1, ['dog', 'slow']],
[1, [5, 4]],
[1, ['mice', 'cat']],
[2, ['cat', 'fast']],
[2, [6, 6]],
[2, ['cat', 'mice']],
[3, ['tree', 'hurry']],
[3, [7, 5]],
[3, ['mice', 'cat']]]
我想从这个嵌套列表中形成一个数据框。我期望这样的输出:
col0 col1 col2 col3
1 ['dog', 'slow'] [5, 4] ['mice', 'cat']
2 ['cat', 'fast'] [6, 6] ['cat', 'fast']
3 ['tree', 'hurry'] [7, 5] ['mice', 'cat']
最佳答案
从原始数据创建一个中间数据框:
first_df = pd.DataFrame(list1)
通过将第二列 reshape 为三列二维数组,将其用作最终数据帧的数据。使用第一列的唯一值作为索引:
pd.DataFrame(first_df[1].values.reshape(3, -1), index=first_df[0].unique())
# 0 1 2
#1 [dog, slow] [5, 4] [mice, cat]
#2 [cat, fast] [6, 6] [cat, mice]
#3 [tree, hurry] [7, 5] [mice, cat]
关于python - `[row_index, [elements]]` 的嵌套列表到 Pandas 数据框?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52340045/