我有以下列表清单:
list=[
['a', 1, 5],
['b', 10, 25],
['c', 2, 7],
['d', 3, 4],
['e', 0, 0]
]
我想要处理这样的结果:
list=[
['a', 1, 5],
[['b', 10, 25],['c', 2, 7]],
[['d', 3, 4], ['e', 0, 0]]
]
这意味着,新列表[1]应该是列表[1]扩展列表[2](新列表[2]应该列表[3]扩展列表[4])同时,同时,旧列表[2]和旧列表[4]将从嵌套列表中删除。然后,必须使用适当的索引将结果转换为pandas数据帧(用于其他用途)。我已经阅读了有关extend()命令但它似乎为列表中的每个变量创建了另一列。我需要的结果怎么样?
编辑: 想要的数据框应该是
0
0 ['a', 1, 5]
1 ['b', 10, 25],['c', 2, 7]
2 ['d', 3, 4], ['e', 0, 0]
答案 0 :(得分:2)
我不了解pandas部分,但是要将第一个嵌套的Python列表转换为第二个嵌套的Python列表,只需执行以下操作:
list = [list[0], [list[1], list[2]], [list[3], list[4]]]
这会将新创建的嵌套列表分配给list
,而不是操纵list
存储的原始列表。不过,最里面的列表将是原始列表。
请注意,Python中的索引是从0开始的,而不是从1开始的。
如果您想操纵原始嵌套列表(例如,因为您有其他必须指向更改列表的引用),请执行以下操作:
list[:] = [list[0], [list[1], list[2]], [list[3], list[4]]]