简体   繁体   English

Append 列表到列表列表

[英]Append lists to list of lists

I want to append lists of dataframes in an existing list of lists:我想 append 现有列表列表中的数据帧列表:

df1 = pd.DataFrame({'A': ['A0', 'A1', 'A2', 'A3'],
                     'B': ['B0', 'B1', 'B2', 'B3'],
                     'C': ['C0', 'C1', 'C2', 'C3'],
                     'D': ['D0', 'D1', 'D2', 'D3']},
                    index=[0, 1, 2, 3])


fr_list = [[] for x in range(2)]
fr_list[0].append(df1)
fr_list[0].append(df1)
fr_list[1].append(df1)


fr2 = [[] for x in range(2)]
fr2[0].append(df1)
fr2[1].append(df1)

fr_list.append(fr2)  # <-- here is the problem

Output: fr_list = [[df1, df1], [df1], [fr2[0], fr2[1]]] List contains 3 elements Output: fr_list = [[df1, df1], [df1], [fr2[0], fr2[1]]]列表包含3 个元素

Expected: fr_list = [[df1, df1, fr2[0]],[df1, fr2[1]]] List contains 2 elements预期: fr_list = [[df1, df1, fr2[0]],[df1, fr2[1]]]列表包含2 个元素

fr_list=[a+b for a,b in zip(fr_list,fr2)]

Replace fr_list.append(fr2) with the above code用上面的代码替换 fr_list.append(fr2)

Explanation: using zip & list comprehension, add corresponding lists in fr_list & fr2.说明:使用 zip & 列表推导,在 fr_list & fr2 中添加对应的列表。 What you did was appended the outer list in fr_list with outer list in fr & not the inner lists.您所做的是在 fr_list 中附加了外部列表,在 fr 中附加了外部列表,而不是在内部列表中。

输出

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM