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})