def get_filtered_nodes(Goriginal, PARAMS): size = PARAMS['sample_size'] sample_using = PARAMS['sampling_technique'] node_list = [] degrees = Goriginal.degree(list(Goriginal.node)) node_deg_asc = sorted(degrees.items(), key=itg(1)) node_deg_desc = sorted(degrees.items(), key=itg(1), reverse=True) deg_asc = [i[1] for i in node_deg_asc] node_desc = [i[0] for i in node_deg_desc] if sample_using == "DegreeMin": median = int(math.ceil(np.median(deg_asc))) start_pos = 0 for i in node_deg_asc: if i[1] == median: start_pos = i[0] break node_asc = [i[0] for i in node_deg_asc] node_list = node_asc[start_pos:][:size] elif sample_using == "DegreeMax": node_list = node_desc[:size] display( "get_filtered_nodes", "Sampling done using " + sample_using + "; node list size is " + str(len(node_list)) + ".") return node_list
def deg_dist(G): degrees = G.degree(list(G.node)) node_deg_asc = sorted(degrees.items(), key=itg(1)) node_deg_desc = sorted(degrees.items(), key=itg(1), reverse=True) deg_asc = [i[1] for i in node_deg_asc] deg_desc = [i[1] for i in node_deg_desc] print "ASC:\n" print deg_asc print "DESC: \n" print deg_desc print "Median: " + str(median(deg_asc)) print "Mean: " + str(mean(deg_asc)) return
def top_matches(sim, wds, n, skip=[]): sk = set(skip) N = n + len(sk) ixs = np.argpartition(sim, -N)[-N:] res = sim[ixs] sim_, wds_ = sim[ixs], wds[ixs] return sorted([(s, w) for s, w in zip(sim_, wds_) if w not in sk], key=itg(0), reverse=1)[:n]
def extract_ctr_children_sum(doc: Tabs_doc) -> Dict[Tab_num, Disp_dur]: default = {'dispatchCount': np.nan, 'duration': np.nan} def reduce_children(chs: List[Disp_dur]): # TODO: extract host info? disp_durs = lmap(extract_dur_disp_tab, chs) return reduce_keys(op.add, disp_durs) or default tab_docs = z.valmap(z.compose(reduce_children, itg('children')), doc) return tab_docs
def ResultTwo(request): # return HttpResponse('wejfiowef') print(request.GET.get('send_date')) # choice_odr_ppr = OrderPaper.objects.filter(due_date=request.GET.get('send_date'), factory_num=request.GET.get('send_factoy_num'), subdivision=request.GET.get('send_sub')) # for item in choice_odr_ppr: # print(item) # cursor_one = connection.cursor() # cnt1 = cursor_one.execute("SELECT * FROM order_paper where due_date='{0}' and factory_num='{1}' and subdivision='{2}';".format(request.GET.get('send_date'), request.GET.get('send_factoy_num'), '1차')) # first_ordpp_qry = cursor_one.fetchall() # cursor_two = connection.cursor() # cnt2 = cursor_two.execute("SELECT * FROM order_paper where due_date='{0}' and factory_num='{1}' and subdivision='{2}';".format(request.GET.get('send_date'), request.GET.get('send_factoy_num'), '2차')) # second_ordpp_qry = cursor_two.fetchall() # zz = list(map(itg(24), first_ordpp_qry)) # zzz = list(map(itg(24), second_ordpp_qry)) # # print(zz) # # print(zzz) # rst_list = [] # for pp_one_item in first_ordpp_qry: # pp_one_item = list(pp_one_item) # for pp_two_item in second_ordpp_qry: # pp_two_item = list(pp_two_item) # if pp_one_item[24]==pp_two_item[24]: # if pp_one_item[15] == pp_two_item[16]: # pp_two_item.append(0) # elif pp_one_item[15] > pp_two_item[16]: # pp_two_item.append(-1) # elif pp_one_item[15] < pp_two_item[16]: # pp_two_item.append(1) # print(pp_two_item) # break date = request.GET.get('send_date') date += ' 00:00:00' factory_num = request.GET.get('send_factoy_num') sub = request.GET.get('send_sub') culoms = ['order_num', 'input', 'cmpy_name', 'delivery_part', 'unit', 'item_name', 'zone', 'order_value', 'box_num', 'box', 'pac', 'due_date', 'factory_num', 'sub'] sql = ''' SELECT op.order_num, max(op.input), max(op.cmpy_name), max(op.delivery_part), max(op.unit), max(op.item_name), max(op.zone), max(op.order_value), max(it.pac_num), sum(CASE WHEN it.unit = 'BOX' AND op.delivery_part='배송' THEN op.order_value WHEN it.unit = 'PAC' AND op.delivery_part='배송' THEN op.order_value DIV it.pac_num WHEN it.unit = 'EA' AND op.delivery_part='배송' THEN (op.order_value DIV it.ea_num) DIV it.pac_num WHEN it.unit = 'KG' AND op.delivery_part='배송' THEN (op.order_value DIV it.kg_num) DIV it.pac_num WHEN op.delivery_part='직송' THEN 0 ELSE 0 END) box, sum( CASE WHEN op.delivery_part='배송' THEN (CASE WHEN it.unit = 'BOX' THEN 0 WHEN it.unit = 'PAC' THEN op.order_value MOD it.pac_num WHEN it.unit = 'EA' THEN (op.order_value DIV it.ea_num) MOD it.pac_num WHEN it.unit = 'KG' THEN (op.order_value DIV it.kg_num) MOD it.pac_num ELSE 0 end) ELSE 0 end ) pac, max(op.due_date), max(op.factory_num), max(op.subdivision), max(op.inh_code), max(op.item_code) FROM order_paper AS op, item AS it WHERE op.due_date='{0}' AND op.factory_num='{1}' AND op.subdivision='{2}' AND op.item_code=it.item_code GROUP BY op.item_code, op.order_num WITH rollup '''.format(date, factory_num, '1차') cursor = connection.cursor() cnt = cursor.execute(sql) result_one_paper = cursor.fetchall() sql = ''' SELECT op.order_num, max(op.input), max(op.cmpy_name), max(op.delivery_part), max(op.unit), max(op.item_name), max(op.zone), max(op.order_value), max(it.pac_num), sum(CASE WHEN it.unit = 'BOX' AND op.delivery_part='배송' THEN op.order_value WHEN it.unit = 'PAC' AND op.delivery_part='배송' THEN op.order_value DIV it.pac_num WHEN it.unit = 'EA' AND op.delivery_part='배송' THEN (op.order_value DIV it.ea_num) DIV it.pac_num WHEN it.unit = 'KG' AND op.delivery_part='배송' THEN (op.order_value DIV it.kg_num) DIV it.pac_num WHEN op.delivery_part='직송' THEN 0 ELSE 0 END) box, sum( CASE WHEN op.delivery_part='배송' THEN (CASE WHEN it.unit = 'BOX' THEN 0 WHEN it.unit = 'PAC' THEN op.order_value MOD it.pac_num WHEN it.unit = 'EA' THEN (op.order_value DIV it.ea_num) MOD it.pac_num WHEN it.unit = 'KG' THEN (op.order_value DIV it.kg_num) MOD it.pac_num ELSE 0 end) ELSE 0 end ) pac, max(op.due_date), max(op.factory_num), max(op.subdivision),max(op.inh_code), max(op.item_code) FROM order_paper AS op, item AS it WHERE op.due_date='{0}' AND op.factory_num='{1}' AND op.subdivision='{2}' AND op.item_code=it.item_code GROUP BY op.item_code, op.order_num WITH rollup '''.format(date, factory_num, '2차') cursor = connection.cursor() cnt = cursor.execute(sql) result_two_paper = cursor.fetchall() # pd.set_option('display.max_row', 500) # print(pd.DataFrame(result_one_paper)) # print(result_two_paper) #2019-12-23 y1-2 result_one_paper = list(result_one_paper) result_two_paper = list(result_two_paper) rst_list = [] rst_it = [] print(result_one_paper[0][14]) while result_one_paper: if result_one_paper[0][0] == None: it = result_one_paper.pop(0) rst_it.append(it) # print(it) if result_two_paper[0][0] == None: it = result_two_paper.pop(0) rst_it.append(it) # print(it) # if result_one_paper[0][0] == None: # it = result_one_paper.pop(0) # rst_it.append(it) # if result_two_paper[0][0] == None: # it = result_two_paper.pop(0) # rst_it.append(it) if result_one_paper[0][14] == result_two_paper[0][14]: it = result_one_paper.pop(0) result_two_paper.pop(0) lst_it = list(it) lst_it.append(0) rst_list.append(lst_it) else: chk_loop = 0 for two_it_loop in range(1, len(result_two_paper)): if result_one_paper[0][14] == result_two_paper[two_it_loop][14] and result_two_paper[two_it_loop][0] != None: chk_loop = 1 it = result_one_paper.pop(0) result_two_paper.pop(0) lst_it = list(it) lst_it.append(0) rst_list.append(lst_it) break if chk_loop == 0: it = result_one_paper.pop(0) lst_it = list(it) lst_it.append(-2) rst_list.append(lst_it) # rst_list = [] # while result_one_paper: # if result_one_paper[0][14] == result_two_paper[0][14] and result_one_paper[0][0] == result_two_paper[0][0] and result_one_paper[0][12] == result_two_paper[0][12]: # if result_one_paper[0][0] != None and result_two_paper[0][0] != None: # it = result_one_paper.pop(0) # result_two_paper.pop(0) # lst_it = list(it) # lst_it.append(0) # rst_list.append(lst_it) # else: # it1 = result_one_paper.pop(0) # it2 = result_two_paper.pop(0) # lst_it1 = list(it1) # lst_it1.append(10) # rst_list.append(lst_it1) # lst_it2 = list(it2) # lst_it2.append(0) # rst_list.append(lst_it2) # else: # chk_loop = 0 # # for two_it_loop in range(len(result_two_paper)): # # if result_one_paper[0][14] == result_two_paper[two_it_loop][14]: # # chk_loop = 1 # # new_it = [result_two_paper.pop(0) for i in range(two_it_loop)] # # new_it = [list(it) for it in new_it] # # [it.append(20) if it[0] == None else it.append(2) for it in new_it] # # # print(new_it) # # [rst_list.append(it) for it in new_it] # # it = result_one_paper.pop(0) # # if it[0] != None: # # result_two_paper.pop(0) # # lst_it = list(it) # # lst_it.append(0) # # rst_list.append(lst_it) # # else: # # result_two_paper.pop(0) # # lst_it = list(it) # # lst_it.append(20) # # rst_list.append(lst_it) # # break # for two_it_loop in range(1, len(result_two_paper)): # if result_one_paper[0][14] == result_two_paper[two_it_loop][14]: # chk_loop = 1 # it = result_one_paper.pop(0) # result_two_paper.pop(0) # if it[0] != None: # lst_it = list(it) # lst_it.append(0) # rst_list.append(lst_it) # else: # lst_it = list(it) # lst_it.append(10) # rst_list.append(lst_it) # break # if chk_loop == 0: # it = result_one_paper.pop(0) # if it[0] != None: # lst_it = list(it) # lst_it.append(-2) # rst_list.append(lst_it) # else: # lst_it = list(it) # lst_it.append(10) # rst_list.append(lst_it) while result_two_paper: it = result_two_paper.pop(0) lst_it = list(it) lst_it.append(2) rst_list.append(lst_it) # while result_two_paper: # it = result_two_paper.pop(0) # if it[0] != None: # lst_it = list(it) # lst_it.append(2) # rst_list.append(lst_it) # else: # lst_it = list(it) # lst_it.append(20) # rst_list.append(lst_it) # print(rst_list) getter_item_code = set(map(itg(15), rst_list)) getter_item_code = list(getter_item_code) new_rst_list = [] # print(getter_item_code) while getter_item_code: it_code = getter_item_code.pop(0) item_group = [] for it in rst_list: if it[15] == it_code: item_group.append(it) for i, it in enumerate(item_group): if it[16] == 10: temp = item_group[i] item_group[i] = item_group[len(item_group)-3] item_group[len(item_group)-3] = temp if it[16] == 20: temp = item_group[i] item_group[i] = item_group[len(item_group)-2] item_group[len(item_group)-2] = temp new_rst_list += item_group # one_pp_loop = 0 # two_pp_loop = 0 # save_two_pp_loop = 0 # for one_pp_loop in range(len(result_one_paper)): # for two_pp_loop in range(save_two_pp_loop, len(result_two_paper)): # if result_one_paper[one_pp_loop][0] != None and result_two_paper[two_pp_loop][0] != None: # if result_one_paper[one_pp_loop][14] == result_two_paper[two_pp_loop][14]: # temp = list(result_two_paper[one_pp_loop]) # temp.append(0) # rst_list.append(temp) # save_two_pp_loop +=1 # break # if result_two_paper[two_pp_loop][0] == None: # temp = list(result_one_paper[one_pp_loop]) # temp.append(-2) # rst_list.append(temp) # break # if result_two_paper[two_pp_loop][0] == None: # print(rst_list) pd.set_option('display.max_row', 500) rst = pd.DataFrame(new_rst_list) # rst = pd.DataFrame(rst_list) # print(rst) # rst.to_excel('rst.xlsx') return JsonResponse({'cnt' : 'wefwef'})