# load files visit_tr = pd.read_pickle("../model/visit_tr.pkl") coupon_tr = pd.read_pickle("../model/coupon_tr.pkl") # add genre-price information coupons_price = pd.read_pickle("../model/coupons_price.pkl") coupon_tr = coupon_tr.merge(coupons_price, on="COUPON_ID") # calculate numer and denom -------------------------------- # remove duplicate visit_tr2 = visit_tr.groupby(["USER_ID", "COUPON_ID"]).size().reset_index().drop(0, axis=1) # add information visit_tr2["genreprice"] = Grouping.lookup_coupon_element(visit_tr2, coupon_tr,"genreprice") visit_tr2["period"] = Grouping.lookup_coupon_element(visit_tr2, coupon_tr, "period") # group to reduce calculation load visit = Grouping.to_group(visit_tr2, ["USER_ID", "genreprice", "period"], True) candidate = Grouping.to_group(coupon_tr, ["genreprice", "period"], True) active = Grouping.to_group(visit_tr2, ["USER_ID", "period"], False) # numer numer = visit.copy() numer = Grouping.to_group_count(numer, ["USER_ID", "genreprice", "period"]) # denom denom = candidate.merge(active, on="period") denom = Grouping.to_group_count(denom, ["USER_ID", "genreprice", "period"])
from util_logger import get_logger LOG = get_logger() LOG.info("start b12b") # load files visit_tr = pd.read_pickle("../model/visit_tr.pkl") coupon_tr = pd.read_pickle("../model/coupon_tr.pkl") # calculate numer and denom -------------------------------- # remove duplicate visit_tr2 = visit_tr.groupby(["USER_ID", "COUPON_ID"]).size().reset_index().drop(0, axis=1) # add information visit_tr2["small_area"] = Grouping.lookup_coupon_element(visit_tr2, coupon_tr, "small_area") visit_tr2["genre"] = Grouping.lookup_coupon_element(visit_tr2, coupon_tr, "genre") visit_tr2["period"] = Grouping.lookup_coupon_element(visit_tr2, coupon_tr, "period") # group to reduce calculation load visit = Grouping.to_group(visit_tr2, ["USER_ID", "genre", "small_area", "period"], True) candidate = Grouping.to_group(coupon_tr, ["genre", "small_area", "period"], True) active = Grouping.to_group(visit_tr2, ["USER_ID", "period"], False) # numer numer = visit.copy() numer = Grouping.to_group_count(numer, ["USER_ID", "genre", "small_area", "period"]) # denom denom = candidate.merge(active, on="period") denom = Grouping.to_group_count(denom, ["USER_ID", "genre", "small_area", "period"])
LOG = get_logger() LOG.info("start b12b") # load files visit_tr = pd.read_pickle("../model/visit_tr.pkl") coupon_tr = pd.read_pickle("../model/coupon_tr.pkl") # calculate numer and denom -------------------------------- # remove duplicate visit_tr2 = (visit_tr.groupby(["USER_ID", "COUPON_ID"]).size().reset_index().drop(0, axis=1)) # add information visit_tr2["small_area"] = Grouping.lookup_coupon_element( visit_tr2, coupon_tr, "small_area") visit_tr2["genre"] = Grouping.lookup_coupon_element(visit_tr2, coupon_tr, "genre") visit_tr2["period"] = Grouping.lookup_coupon_element(visit_tr2, coupon_tr, "period") # group to reduce calculation load visit = Grouping.to_group(visit_tr2, ["USER_ID", "genre", "small_area", "period"], True) candidate = Grouping.to_group(coupon_tr, ["genre", "small_area", "period"], True) active = Grouping.to_group(visit_tr2, ["USER_ID", "period"], False) # numer numer = visit.copy() numer = Grouping.to_group_count(numer,
LOG = get_logger() LOG.info("start b12a") # load files visit_tr = pd.read_pickle("../model/visit_tr.pkl") coupon_tr = pd.read_pickle("../model/coupon_tr.pkl") # calculate numer and denom -------------------------------- # remove duplicate visit_tr2 = (visit_tr.groupby(["USER_ID", "COUPON_ID"]).size().reset_index().drop(0, axis=1)) # add information visit_tr2["pref"] = Grouping.lookup_coupon_element(visit_tr2, coupon_tr, "pref") visit_tr2["genre"] = Grouping.lookup_coupon_element(visit_tr2, coupon_tr, "genre") visit_tr2["period"] = Grouping.lookup_coupon_element(visit_tr2, coupon_tr, "period") # group to reduce calculation load visit = Grouping.to_group(visit_tr2, ["USER_ID", "genre", "pref", "period"], True) candidate = Grouping.to_group(coupon_tr, ["genre", "pref", "period"], True) active = Grouping.to_group(visit_tr2, ["USER_ID", "period"], False) # numer numer = visit.copy() numer = Grouping.to_group_count(numer, ["USER_ID", "genre", "pref", "period"])