pandas 根据某一列数据merge文件,excel Vlookup的实现

import pandas as pd
import os
import functools

#水平拼接2个file, 以on_name这个关键字为主,方向用于设置以哪个df为主,尤其针对实验前后数据对比,比较好用
def H_merge_2files(df1,df2,on_name,Fangxiang='right')->pd.DataFrame:

    df = pd.merge(df1, df2, how=Fangxiang, on=on_name)

    df.dropna(axis=0, how='any', inplace=True, subset=None)

    return df


#水平拼接3个file, 以on_name这个关键字为主,方向用于设置以哪个df为主,尤其针对实验前后数据对比,比较好用
def H_merge_3files(df1,df2,df3,on_name,Fangxiang='right')->pd.DataFrame:

    df_temp1 = pd.merge(df1, df2, how=Fangxiang, on=on_name)

    df=pd.merge(df_temp1, df3, how=Fangxiang, on=on_name)

    df.dropna(axis=0, how='any', inplace=True, subset=None)

    return df


#水平拼接4个file, 以on_name这个关键字为主,方向用于设置以哪个df为主,尤其针对实验前后数据对比,比较好用
def H_merge_4files(df1,df2,df3,df4,on_name,Fangxiang='right')->pd.DataFrame:

    df_temp1 = pd.merge(df1, df2, how=Fangxiang, on=on_name)
    df_temp2 = pd.merge(df_temp1, df3, how=Fangxiang, on=on_name)
    df = pd.merge(df_temp2, df4, how=Fangxiang, on=on_name)
    df.dropna(axis=0, how='any', inplace=True, subset=None)


    return df


#水平拼接5个file, 以on_name这个关键字为主,方向用于设置以哪个df为主,尤其针对实验前后数据对比,比较好用
def H_merge_5files(df1,df2,df3,df4,df5,on_name,Fangxiang='right')->pd.DataFrame:

    df_temp1 = pd.merge(df1, df2, how=Fangxiang, on=on_name)
    df_temp2 = pd.merge(df_temp1, df3, how=Fangxiang, on=on_name)
    df_temp3 = pd.merge(df_temp2, df4, how=Fangxiang, on=on_name)
    df = pd.merge(df_temp3, df5, how=Fangxiang, on=on_name)
    df.dropna(axis=0, how='any', inplace=True, subset=None)

    return df


if __name__ == '__main__':

    df1=pd.read_excel(r'C:\Users\jackey\Desktop\TXRXRSSI\ATE_Summary.xlsx',sheet_name='P1P2')
    df2=pd.read_excel(r'C:\Users\jackey\Desktop\TXRXRSSI\ATE_Summary.xlsx',sheet_name='R1')
    df3 = pd.read_excel(r'C:\Users\jackey\Desktop\TXRXRSSI\ATE_Summary.xlsx', sheet_name='R2')
    on_name='4010:mac_l_1st'
    Fangxiang='right'
    df=H_merge_3files(df1,df2,df3,on_name,Fangxiang)
    df.to_excel(r'C:\Users\jackey\Desktop\TXRXRSSI\TG7100C_12K_TXRXRSSI_20220530.xlsx',index=None)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值