【发布时间】:2020-10-07 07:31:23
【问题描述】:
我有两个数据框,
df1 = pd.DataFrame({'col_A':['AA','AA','AB','AB','AA','AA','AB','AB'],
'col_B':['BB','BB','BB','BB','BC','BC','BC','BC'],
'col_HIGH':[10,20,10,20,10,20,10,20],
'col_LOW':[0,10.0001,0,10.0001,0,10.0001,0,10.0001],
'col_D':[6,16,7,17,8,18,9,19]})
df2 = pd.DataFrame({'ID':['01','11','21','02','12','22','03','13','23','04','14','24','05','15','25','06','16','26','07','17','27','08','18','28'],
'col_A':['AA','AA','AA','AA','AA','AA','AB','AB','AB','AB','AB','AB','AA','AA','AA','AA','AA','AA','AB','AB','AB','AB','AB','AB'],
'col_B':['BB','BB','BB','BB','BB','BB','BB','BB','BB','BB','BB','BB','BC','BC','BC','BC','BC','BC','BC','BC','BC','BC','BC','BC',],
'col_C':[5,7,9,15,17,19,5,7,9,15,17,19,5,7,9,15,17,19,5,7,9,15,17,19]})
我想在df2中创建col_D,并使用df1中col_D的值根据df1和df2中col_A和col_B匹配的多个条件进行填充,df2中的col_C值在df1中col_HIGH和col_LOW的范围内。最快的方法是什么?
【问题讨论】:
-
你能添加预期输出的例子吗?
-
嗨弗兰基,您的问题并不明确您正在寻找什么输出。请修改和更新。
-
感谢您的回答。我的预期输出是 Scott Boston 提供的。根据df1中col_A、col_B和col_C中的值,映射df2中的行并添加col_D中的值。
标签: python pandas numpy dataframe