我这里有一个困难。我的目标是为一个商店创建一个销售列表,其中一个数据框按产品列出价格,另一个数据框按产品和数量列出所有销售(一段时间内)
数据帧1:价格
prices = pd.DataFrame({'qty_from' : ('0','10','20'), 'qty_to' : ('9','19','29'), 'product_A' :(50,30,10),'product_B' :(24,14,12),'product_C' :(70,50,18)})
数据帧2:销售
sales = pd.DataFrame({'product' : ('product_b','product_b','product_a',product_c,product_b), 'qty' : ('4','12','21','41','7')})
我想得到营业额,在'销售'数据框内逐行,另一列像'营业额'
我曾经
pd.merge_asof(sales, prices, left_on='qty', right_on='qty_from', direction='backward')
它给了我一个正确的价格,但如何得到一个产品的好价格呢? 如何与“sales”数据框中的一个值(如“product\u b”)合并,并在“product\u b”中使用数据框价格中的一列名称,然后应用计算得到营业额
谢谢你的帮助
埃里克
如果我理解正确,您可以修改数据帧价格,以便能够使用
merge_asof
中的参数by
,使用stack
:相关问题 更多 >
编程相关推荐