如何在不连接两个数据帧的情况下在Python中对下面的代码进行矢量化

如何在不连接两个数据帧的情况下在Python中对下面的代码进行矢量化,python,pandas,numpy,vectorization,apply,Python,Pandas,Numpy,Vectorization,Apply,我有两个数据帧和多个列,如下所示 头部(df 头部(配置测向) 我想在数据帧df上应用行操作,使用下面使用apply函数的逻辑,从config_df中找到合适的容量配置id def config_map(row): row = row.copy() return config_df.loc[(config_df['Node'] == row['SCHEDULING_DC_NBR']) & (config_df['COMMODITY_CODE'] == row['COMMO

我有两个数据帧和多个列,如下所示

头部(df

头部(配置测向)

我想在数据帧df上应用行操作,使用下面使用apply函数的逻辑,从config_df中找到合适的容量配置id

def config_map(row):
    row = row.copy()
    return config_df.loc[(config_df['Node'] == row['SCHEDULING_DC_NBR']) & (config_df['COMMODITY_CODE'] == row['COMMODITY_CODE']) 
                          &  (config_df['APPLICABLE_DAYS'].str.contains(row['DOW'],case=False))
                          & (live_config['Window_start_time'] == row['Unload_Start_Time']),"capacity_config_id"].values[0]
尽管如此,上面的代码仍然有效,但运行起来需要很多时间。
我不想加入或合并这两个数据框,因为我将在上面的应用函数中做多个其他检查。我正在寻找一种方法来快速地计算这个函数。

< P>你可以考虑使用PANDA应用方法,
使用此功能,您可以对操作进行矢量化

请修复代码中的错误。请在粘贴之前验证它是否运行,请执行类似于
合并
@anon01的命令。抱歉,这些错误。修复了code@QuangHoang我知道我们可以合并,但我正在寻找其他选项,因为我的原始配置映射函数包含多个计算和条件语句。
Node      Window               APPLICABLE_DAYS   COMMODITY_CODE  Window_start_time  config_ID
7023.0  03:15 AM to 03:16 AM            MON         SCPR                03:15        123
7023.0  03:15 AM to 03:16 AM            THUR        SCPR                03:15        123
7023.0  03:15 AM to 03:16 AM            FRI         SCPR                03:15        123
6042.0  06:00 PM to 06:05 PM            SUN         SCPR                18:00        111
6042.0  03:00 PM to 03:05 PM            SUN         SCGR                15:00        222
def config_map(row):
    row = row.copy()
    return config_df.loc[(config_df['Node'] == row['SCHEDULING_DC_NBR']) & (config_df['COMMODITY_CODE'] == row['COMMODITY_CODE']) 
                          &  (config_df['APPLICABLE_DAYS'].str.contains(row['DOW'],case=False))
                          & (live_config['Window_start_time'] == row['Unload_Start_Time']),"capacity_config_id"].values[0]