从多个嵌套列表创建数据帧的最佳方法

2024-09-28 16:20:52 发布

您现在位置:Python中文网/ 问答频道 /正文

我有4个嵌套列表,结构如下:

liste 1 = [[ColA,ColB,ColC],.....]  
liste 2 = [[ColA,ColB,ColD],.....]  
liste 3 = [[ColA,ColB,ColE],.....]  
liste 4 = [[ColA,ColB,ColF],.....]  

共有两列。我想创建一个具有以下结构的数据帧:

df.columns = [ColA,ColB,ColC,ColD,ColE,ColF]

到目前为止我所做的:

df1 =pd.DataFrame(list1,columns=['ColA','ColB','ColC'])
df2 = pd.DataFrame(list2,columns=['ColA','ColB','ColD'])
df3 = pd.DataFrame(list3,columns=['ColA','ColB','ColE'])
df4 = pd.DataFrame(list4,columns=['ColA','ColB','ColF'])


print('merging dataframes')
#dirty line to execute several outer join on multiple df in one line
df_Total=df1.merge(df2,how='left',on=['ColA','ColB']).merge(df3,how='left',on=['ColA','ColB']).merge(df4,how='left',on=['ColA','ColB'])

我想知道是否有更好的方法来执行这一点,以提高性能。 我还尝试了join方法来合并我的数据帧。我认为主要的改进是直接从列表中创建正确的df,而不创建4,然后将它们合并在一起。你知道吗


Tags: columnsdataframedfonmergelefthowpd