Commit 11dc41a5 by chenyuanjie

ABA搜索词-bsr相关指标采用Amazon销量代替计算

parent 9d0dad52
......@@ -511,7 +511,7 @@ class DwtAbaStAnalytics(Templates):
).withColumn(
# 新品bsr销量
"asin_is_new_bsr_orders",
F.when(F.col("asin_is_new") == 1, F.col("asin_bsr_orders"))
F.when(F.col("asin_is_new") == 1, F.col("asin_amazon_orders"))
).withColumn(
# 新品zr销量
"asin_is_new_zr_orders",
......@@ -564,7 +564,7 @@ class DwtAbaStAnalytics(Templates):
self.df_st_brand_cal = self.df_st_brand_cal.filter("asin_brand_name is not null")
self.df_st_brand_cal = self.df_st_brand_cal.filter("asin_brand_name not in('null','None')")
self.df_st_brand_cal = self.df_st_brand_cal.groupby(['search_term', 'asin_brand_name']).agg(
F.sum("asin_bsr_orders").alias("asin_brand_bsr_orders_total"),
F.sum("asin_amazon_orders").alias("asin_brand_bsr_orders_total"),
F.sum("asin_zr_orders").alias("asin_brand_zr_orders_total")
)
......@@ -614,7 +614,7 @@ class DwtAbaStAnalytics(Templates):
# 计算卖家top3销量和总销量
self.df_st_seller_cal = self.df_st_seller_cal.filter("account_id is not null")
self.df_st_seller_cal = self.df_st_seller_cal.groupby(['search_term', 'account_id']).agg(
F.sum("asin_bsr_orders").alias("asin_seller_bsr_orders_total"),
F.sum("asin_amazon_orders").alias("asin_seller_bsr_orders_total"),
F.sum("asin_zr_orders").alias("asin_seller_zr_orders_total")
)
......@@ -723,25 +723,21 @@ class DwtAbaStAnalytics(Templates):
"asin_count",
"total_asin_num"
).withColumnRenamed(
# 总bsr销量
"st_bsr_orders",
"bsr_orders"
).withColumnRenamed(
# 总预估销量
"st_zr_orders",
"orders"
).withColumn(
# 销量占比 新品销量占比
"new_bsr_orders_proportion",
F.round(F.col("new_asin_bsr_orders") / F.col("bsr_orders"), 3)
F.round(F.col("new_asin_bsr_orders") / F.col("amazon_monthly_sales"), 3)
).withColumn(
# 品牌垄断系数
"brand_monopoly",
F.ceil((F.col("top3_brand_bsr_orders") / F.col("bsr_orders")) * 1000) / 1000
F.ceil((F.col("top3_brand_bsr_orders") / F.col("amazon_monthly_sales")) * 1000) / 1000
).withColumn(
# 卖家垄断系数
"seller_monopoly",
F.ceil((F.col("top3_seller_bsr_orders") / F.col("bsr_orders")) * 1000) / 1000
F.ceil((F.col("top3_seller_bsr_orders") / F.col("amazon_monthly_sales")) * 1000) / 1000
).withColumn(
# ABA搜索词拆分的单词个数
"st_word_num",
......@@ -810,7 +806,7 @@ class DwtAbaStAnalytics(Templates):
"rank",
"category_id",
"orders",
"bsr_orders",
F.col("amazon_monthly_sales").alias("bsr_orders"),
"search_volume",
"quantity_being_sold",
F.round("st_ao_avg", 3).alias("st_ao_avg"),
......@@ -924,6 +920,7 @@ class DwtAbaStAnalytics(Templates):
"is_new_market_segment": 0,
"is_high_return_text": 0,
"amazon_monthly_sales": 0,
"bsr_orders": 0,
"is_hidden_cate": 0
})
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment