Commit 65a00427 authored by 张彦钊's avatar 张彦钊

add

parent 83044b6b
...@@ -15,7 +15,7 @@ param_dict={} ...@@ -15,7 +15,7 @@ param_dict={}
# param_detail = {"device_id": 'xx',"size": 10,"offset":0, "query": "双眼皮","user_city_tag_id": 328,"is_officer":False} # param_detail = {"device_id": 'xx',"size": 10,"offset":0, "query": "双眼皮","user_city_tag_id": 328,"is_officer":False}
param_dict["method"]="doris/search/bangdan" param_dict["method"]="doris/search/bangdan"
param_detail = {"device_id": '2',"size": 10,"offset":0, "user_city_tag_id": 328,"is_officer":True} param_detail = {"device_id": '2',"size": 10,"offset":0, "user_city_tag_id": 328,"is_officer":False,"unit_ids":[]}
# a = [105, 2941, 780, 102, 873, 2060, 187, 2935, 2108, 912, 928, 2059, 4437, 822, 2866, 2778, 824, 821, 2938] # a = [105, 2941, 780, 102, 873, 2060, 187, 2935, 2108, 912, 928, 2059, 4437, 822, 2866, 2778, 824, 821, 2938]
......
...@@ -2,6 +2,7 @@ import datetime ...@@ -2,6 +2,7 @@ import datetime
import pymysql import pymysql
import pandas as pd import pandas as pd
def doctor(): def doctor():
date_str = (datetime.datetime.now() - datetime.timedelta(days=1)).strftime("%Y%m%d") date_str = (datetime.datetime.now() - datetime.timedelta(days=1)).strftime("%Y%m%d")
date_tmp = (datetime.datetime.now() - datetime.timedelta(days=1)).strftime("%Y-%m-%d") date_tmp = (datetime.datetime.now() - datetime.timedelta(days=1)).strftime("%Y-%m-%d")
...@@ -54,6 +55,116 @@ def doctor(): ...@@ -54,6 +55,116 @@ def doctor():
data.to_csv('/home/gmuser/doctor.csv',index=False) data.to_csv('/home/gmuser/doctor.csv',index=False)
def v1_doctor():
date_str = (datetime.datetime.now() - datetime.timedelta(days=1)).strftime("%Y%m%d")
date_tmp = (datetime.datetime.now() - datetime.timedelta(days=1)).strftime("%Y-%m-%d")
sql = "select d.doctor_id,d.service_exposure_pv_30,d.service_ctr_30,d.expert_exposure_pv_30,d.expert_pv_30," \
"b.merchant_id,budan.budan_payment_30_days "
"from statistic_doctor_rank_factor d " \
"left join hippo_merchantrelevance b on d.doctor_id = b.doctor_id " \
"left join al_meigou_service_smart_rank_budan_payment budan on b.merchant_id = budan.merchant_id " \
"where d.partition_date = '{}' and budan.stat_date = '{}' limit 6;".format(date_str, date_tmp)
db = pymysql.connect(host='172.16.30.143', port=3306, user='work', passwd='BJQaT9VzDcuPBqkd', db='zhengxing')
cursor = db.cursor()
cursor.execute(sql)
result = cursor.fetchall()
df = pd.DataFrame(list(result))
name = ["doctor_id", "service_exposure_pv_30", "service_ctr_30", "expert_exposure_pv_30", "expert_pv_30",
"merchant_id","budan_payment_30_days"]
df = df.rename(columns=dict(zip(list(range(len(name))), name)))
print(df)
sql = "select merchant_id,doctor_ad_money_30_days,expand_rechange_amount_30," \
"service_pv_30,expert_pv_30,organization_pv_30 from statistic_merchant_rank_factor " \
"where partition_date = '{}'; limit 6".format(date_str)
cursor = db.cursor()
cursor.execute(sql)
result = cursor.fetchall()
tmp = pd.DataFrame(list(result))
name = ["merchant_id", "doctor_ad_money_30_days", "expand_rechange_amount_30", "service_pv_30",
"mexpert_pv_30", "organization_pv_30"]
tmp = tmp.rename(columns=dict(zip(list(range(len(name))), name)))
print(tmp)
# for i in ["service_exposure_pv_30", "service_ctr_30", "expert_exposure_pv_30", "expert_pv_30",
# "doctor_ad_money_30_days", "expand_rechange_amount_30", "service_pv_30",
# "mexpert_pv_30", "organization_pv_30", "budan_payment_30_days"]:
# df[i] = df[i].astype("float")
#
# df["all_exposure"] = df["service_exposure_pv_30"] + df["expert_exposure_pv_30"]
# df = df[~df["expert_exposure_pv_30"].isin([0.0])]
# df = df[~df["all_exposure"].isin([0.0])]
# df["tmp"] = df["service_pv_30"] + df["mexpert_pv_30"] +df["organization_pv_30"]
# df = df[~df["tmp"].isin([0.0])]
#
# df["ctr"] = df["service_exposure_pv_30"] / df["all_exposure"] * df["service_ctr_30"] + \
# df["expert_exposure_pv_30"]/df["all_exposure"] * (df["expert_pv_30"] / df["expert_exposure_pv_30"])
# df["commission"] = (df["doctor_ad_money_30_days"] + df["budan_payment_30_days"])/df["tmp"]
# df["pv_ad"] = df["expand_rechange_amount_30"]/df["tmp"]
# df["score"] = df["ctr"]**0.5 * (df["commission"] + df["pv_ad"])
# columns = ["score","ctr","commission","pv_ad","service_exposure_pv_30","service_ctr_30","expert_exposure_pv_30","expert_pv_30",
# "merchant_id","doctor_ad_money_30_days","expand_rechange_amount_30","service_pv_30",
# "mexpert_pv_30","organization_pv_30","budan_payment_30_days"]
# data = df.loc[:, columns]
# # print(data)
# data.to_csv('/home/gmuser/doctor.csv',index=False)
def hospital():
date_str = (datetime.datetime.now() - datetime.timedelta(days=1)).strftime("%Y%m%d")
date_tmp = (datetime.datetime.now() - datetime.timedelta(days=1)).strftime("%Y-%m-%d")
sql = "select h.hospital_id,h.hospital_exposure_pv_30,h.service_exposure_pv_30," \
"h.expert_exposure_pv_30,h.service_ctr_30,h.hospital_ctr_30,h.expert_ctr_30" \
"api.id,b.merchant_id," \
"m.doctor_ad_money_30_days,m.expand_rechange_amount_30,m.service_pv_30,m.expert_pv_30,m.organization_pv_30," \
"budan.budan_payment_30_days " \
"from statistic_hospital_rank_factor h left join api_doctor api on h.hospital_id = api.hospital_id " \
"left join hippo_merchantrelevance b on api.id = b.doctor_id " \
"left join statistic_merchant_rank_factor m on b.merchant_id = m.merchant_id " \
"left join al_meigou_service_smart_rank_budan_payment budan on b.merchant_id = budan.merchant_id " \
"where h.partition_date = '{}' and m.partition_date = '{}' " \
"and budan.stat_date = '{}';".format(date_str,date_str,date_tmp)
db = pymysql.connect(host='172.16.30.143', port=3306, user='work', passwd='BJQaT9VzDcuPBqkd', db='zhengxing')
cursor = db.cursor()
cursor.execute(sql)
result = cursor.fetchall()
df = pd.DataFrame(list(result))
name = ["hospital_id","hospital_exposure_pv_30","service_exposure_pv_30" \
"h.expert_exposure_pv_30,h.service_ctr_30,h.hospital_ctr_30,h.expert_ctr_30","id",
"merchant_id","doctor_ad_money_30_days","expand_rechange_amount_30","service_pv_30",
"mexpert_pv_30","organization_pv_30","budan_payment_30_days"]
df = df.rename(columns=dict(zip(list(range(len(name))),name)))
for i in ["service_exposure_pv_30", "service_ctr_30", "expert_exposure_pv_30", "expert_pv_30",
"doctor_ad_money_30_days", "expand_rechange_amount_30", "service_pv_30",
"mexpert_pv_30", "organization_pv_30", "budan_payment_30_days"]:
df[i] = df[i].astype("float")
df["all_exposure"] = df["service_exposure_pv_30"] + df["expert_exposure_pv_30"]
df = df[~df["expert_exposure_pv_30"].isin([0.0])]
df = df[~df["all_exposure"].isin([0.0])]
df["tmp"] = df["service_pv_30"] + df["mexpert_pv_30"] +df["organization_pv_30"]
df = df[~df["tmp"].isin([0.0])]
df["ctr"] = df["service_exposure_pv_30"] / df["all_exposure"] * df["service_ctr_30"] + \
df["expert_exposure_pv_30"]/df["all_exposure"] * (df["expert_pv_30"] / df["expert_exposure_pv_30"])
df["commission"] = (df["doctor_ad_money_30_days"] + df["budan_payment_30_days"])/df["tmp"]
df["pv_ad"] = df["expand_rechange_amount_30"]/df["tmp"]
df["score"] = df["ctr"]**0.5 * (df["commission"] + df["pv_ad"])
columns = ["score","ctr","commission","pv_ad","service_exposure_pv_30","service_ctr_30","expert_exposure_pv_30","expert_pv_30",
"merchant_id","doctor_ad_money_30_days","expand_rechange_amount_30","service_pv_30",
"mexpert_pv_30","organization_pv_30","budan_payment_30_days"]
data = df.loc[:, columns]
# print(data)
data.to_csv('/home/gmuser/doctor.csv',index=False)
if __name__ == "__main__": if __name__ == "__main__":
doctor() v1_doctor()
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