我有一个查询需要几个小时才能运行,因为我在同一数据集上运行多个计算,并且必须为不同的计算重复查询同一数据集。
我没有能力创建临时表。
我的数据集看起来像:
ITEM NUMBER | BRAND | X | Seller ID | Y
我需要计算每个品牌中x> y值为真的唯一卖家。
为什么不只写一个查询呢?
select brand, count(distinct sellerID)
from t
where x > y
group by brand;
g = df.groupby('brand')g.apply(λx: x (x[‘column_x]> [' column_y ']] [' item_number '] .count ())
接近我所需要的。这给出了满足条件的所有实例,但现在我需要与满足条件的实例相关联的不同的卖方id。
我也已经能够创建一个子集,并这样做:
df (df [x]> df [y]] .groupby("品牌")("item_number").count ()
我想我可以试试这样做:
g = wbc_total.groupby('brand')g.apply(λx: len (x (x[‘column_x]> [' column_y ']] [' comp_id '] .unique ()))
刚刚生效