Commit 11dc41a5 by chenyuanjie

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

parent 9d0dad52
...@@ -511,7 +511,7 @@ class DwtAbaStAnalytics(Templates): ...@@ -511,7 +511,7 @@ class DwtAbaStAnalytics(Templates):
).withColumn( ).withColumn(
# 新品bsr销量 # 新品bsr销量
"asin_is_new_bsr_orders", "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( ).withColumn(
# 新品zr销量 # 新品zr销量
"asin_is_new_zr_orders", "asin_is_new_zr_orders",
...@@ -564,7 +564,7 @@ class DwtAbaStAnalytics(Templates): ...@@ -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 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.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( 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") F.sum("asin_zr_orders").alias("asin_brand_zr_orders_total")
) )
...@@ -614,7 +614,7 @@ class DwtAbaStAnalytics(Templates): ...@@ -614,7 +614,7 @@ class DwtAbaStAnalytics(Templates):
# 计算卖家top3销量和总销量 # 计算卖家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.filter("account_id is not null")
self.df_st_seller_cal = self.df_st_seller_cal.groupby(['search_term', 'account_id']).agg( 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") F.sum("asin_zr_orders").alias("asin_seller_zr_orders_total")
) )
...@@ -723,25 +723,21 @@ class DwtAbaStAnalytics(Templates): ...@@ -723,25 +723,21 @@ class DwtAbaStAnalytics(Templates):
"asin_count", "asin_count",
"total_asin_num" "total_asin_num"
).withColumnRenamed( ).withColumnRenamed(
# 总bsr销量
"st_bsr_orders",
"bsr_orders"
).withColumnRenamed(
# 总预估销量 # 总预估销量
"st_zr_orders", "st_zr_orders",
"orders" "orders"
).withColumn( ).withColumn(
# 销量占比 新品销量占比 # 销量占比 新品销量占比
"new_bsr_orders_proportion", "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( ).withColumn(
# 品牌垄断系数 # 品牌垄断系数
"brand_monopoly", "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( ).withColumn(
# 卖家垄断系数 # 卖家垄断系数
"seller_monopoly", "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( ).withColumn(
# ABA搜索词拆分的单词个数 # ABA搜索词拆分的单词个数
"st_word_num", "st_word_num",
...@@ -810,7 +806,7 @@ class DwtAbaStAnalytics(Templates): ...@@ -810,7 +806,7 @@ class DwtAbaStAnalytics(Templates):
"rank", "rank",
"category_id", "category_id",
"orders", "orders",
"bsr_orders", F.col("amazon_monthly_sales").alias("bsr_orders"),
"search_volume", "search_volume",
"quantity_being_sold", "quantity_being_sold",
F.round("st_ao_avg", 3).alias("st_ao_avg"), F.round("st_ao_avg", 3).alias("st_ao_avg"),
...@@ -924,6 +920,7 @@ class DwtAbaStAnalytics(Templates): ...@@ -924,6 +920,7 @@ class DwtAbaStAnalytics(Templates):
"is_new_market_segment": 0, "is_new_market_segment": 0,
"is_high_return_text": 0, "is_high_return_text": 0,
"amazon_monthly_sales": 0, "amazon_monthly_sales": 0,
"bsr_orders": 0,
"is_hidden_cate": 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