有2个Dataframe,其中一个包含如下价格信息(第1天到第100天为100行),
StoreId,ItemID, Date,Price
HH-101,item1, d_1, €9
HH-101,item1, d_2, €7
……………………………
DH-101,item1, d_90, €4
……………………………
HH-101,item1, d_100, €3
第二个数据框是销售信息,如图所示(第1天到第100天为100列,但只有一行)
Stored_ID, ItemID, d-1, d-2, d-3,……. d-90,d-100
HH-101 , item1 , 2 , 4 , 0,………..,12 ,22
HH-101 , item2 , 1 , 0 , 3 ……………,3 ,3
生成另一个Dataframe的最佳pyspark脚本是什么
具有新列,其总和为
单位数量*销售价格,对应于每个项目
example for store HH-101 and item1
2*9+ 4*7+........+.....+...12*4+22*3
对于超过100列的产品,有没有哪一步可以代替产品的总和
1条答案
按热度按时间yshpjwxd1#
下面是从示例Dataframe派生的一个更简单的示例。我认为它也应该可以扩展到您的真实数据。
你可以解开它
df2
使用stack
使用从列名的列表理解生成的查询字符串,然后连接到df1
使用前3列,按store id和item id分组,得到price * number
.