有两个列表,其中元素是 DF 并且具有 datetimeindex
:
lst_1 = [ df1, df2, df3, df4] #columns are same here 'price'
lst_2 = [df1, df2, df3, df4] #columns are same here 'quantity'
我正在使用 pandas 合并功能一个一个地进行。我试着做一些事情,我添加了两个列表并制作了这样的功能:
def df_merge(df1 ,df1):
p_q_df1 = pd.merge(df1,df1, on='Dates')
return p_q_df1
#this merged df has now price and quantity representing df1 from list! and list_2
我仍然必须再次申请每一对。有没有更好的方法,也许在循环中自动化这个?
最佳答案
考虑使用 zip
进行元素循环,这可以在列表理解中处理。
# DATES AS INDEX
final_lst = [pd.concat(i, j, axis=1) for i, j in zip(lst_1, lst_2)]
# DATES AS COLUMN
final_lst = [pd.merge(i, j, on='Dates') for i, j in zip(lst_1, lst_2)]
关于python - 在python中合并来自两个不同列表的DF,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59077221/