python - 在python中合并来自两个不同列表的DF

标签 python pandas dataframe merge

有两个列表,其中元素是 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/

相关文章:

python - 从数据集中过滤非 -'cohorts'

python - 改进具有多行的交互式 Altair 折线图的选项

python - pandas中每组行减去不同的引用值

用第二个数据框中的值替换一个数据框中的 NA 值

python - ReportLabs Django 集成

python - 我的移动网络对编码有何影响?

python - 按当前日期前一周的日期过滤数据框

python - 训练好的 Keras 模型无法使用 load_model 加载

python - 用Python编码有向图的 bool 邻接矩阵

python-3.x - 比较两个数据帧并根据匹配的列值从 df 中删除行