我有两个数据帧和多个列,如下所示
头部(df
SCHEDULING_DC_NBR COMMODITY_CODE Unload_Start_Time DOW Dlry
0 6042.0 SCGR 15:15 SUN 5
1 6042.0 SCGR 15:30 SUN 6
2 6042.0 SCGR 15:45 SUN 7
3 6042.0 SCGR 16:15 SUN 8
4 6042.0 SCGR 18:30 SUN 9
头部(配置测向)
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
我想在数据帧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]
尽管如此,上面的代码仍然有效,但运行起来需要很多时间。 我不想加入或合并这两个数据帧,因为我将在上面的apply函数中执行多个其他检查。我正在寻找一种方法来矢量化此函数,以加快计算速度
可以考虑使用大熊猫应用方法,https://pandas.pydata.org/pandas-docs/stable/reference/api/pandas.DataFrame.apply.html 使用此选项可以对操作进行矢量化
相关问题 更多 >
编程相关推荐