Python 数据框中每个列表的唯一标识符

Python 数据框中每个列表的唯一标识符,python,Python,我有一张名单 lst = [[2, 0, 1, 6, 7, 8], [4, 3, 5]] 我想将列表展平,并为合并到data.frame中的列表中的每个列表分配一个唯一的id 期望输出: value group 0 2 0 1 0 0 2 1 0 3 6 0 4 7 0 5 8 0 6 4 1 7 3 1 8 5 1 在要求期望的输出之前,您应该尝试一些东西 在列表列表中循环,同时具有唯一标识符,您可能希望使用“提

我有一张名单

lst = [[2, 0, 1, 6, 7, 8], [4, 3, 5]] 
我想将列表展平,并为合并到data.frame中的列表中的每个列表分配一个唯一的id

期望输出:

  value group
0   2   0
1   0   0
2   1   0
3   6   0
4   7   0
5   8   0
6   4   1
7   3   1
8   5   1

在要求期望的输出之前,您应该尝试一些东西

在列表列表中循环,同时具有唯一标识符,您可能希望使用“提供列表索引器”的枚举函数

for i,sub_list in enumerate(lst):
    identifier = i
    [(value,identifier) for value in sublist]
    ....

如果您想要熊猫数据帧,希望这将对您有所帮助:

import pandas as pd

lst = [[2, 0, 1, 6, 7, 8], [4, 3, 5]] 

final_list = []
for i, l in enumerate(lst):
    for num in l:
        final_list.append({'value': num, 'group': i})

df = pd.DataFrame(final_list)

您需要进行一些奇特的展平:

flattened = [(item, index) for index, sublist in enumerate(lst) for item in sublist]
df = pd.DataFrame(flattened, columns=['value','group'])
您可以使用以下代码:

new_lst = []
for group in lst:
    for n in group:
        new_lst.append({"group":lst.index(group),"value": n})