根据另一个列表列表合并数据框列表
Merging list of Dataframes depending on another list of lists
我有一个数据框列表和一个带有数字的列表。
我的想法是,我想根据与堆叠在一起的数字列表相匹配的索引将 Dataframes 合并在一起。
例如合并 df1 和 df2 因为 0 和 1。然后因为 2、3、4、5 合并 df3、df4、df5、df6。等...
list_dfs=[df1, df2, df3... df50]
list_num= [[0,1], [2,3,4,5], [6], [7,8] ... [125,126,127]]
这就是我所做的,但我确定它不是 pythonic。
dfs_list=[]
for i, df in enumerate(list_dfs):
for index,num in enumerate(list_num):
dfs_list.append(pd.merge(dfs[i], dfs[num]))
任何建议。
你不需要外部 for
:
dfs_list=[]
for nums in list_num:
dfs_list.append(pd.concat([dfs[i] for i in nums], join="inner"))
我有一个数据框列表和一个带有数字的列表。
我的想法是,我想根据与堆叠在一起的数字列表相匹配的索引将 Dataframes 合并在一起。 例如合并 df1 和 df2 因为 0 和 1。然后因为 2、3、4、5 合并 df3、df4、df5、df6。等...
list_dfs=[df1, df2, df3... df50]
list_num= [[0,1], [2,3,4,5], [6], [7,8] ... [125,126,127]]
这就是我所做的,但我确定它不是 pythonic。
dfs_list=[]
for i, df in enumerate(list_dfs):
for index,num in enumerate(list_num):
dfs_list.append(pd.merge(dfs[i], dfs[num]))
任何建议。
你不需要外部 for
:
dfs_list=[]
for nums in list_num:
dfs_list.append(pd.concat([dfs[i] for i in nums], join="inner"))