CoolFace
Apppublic

Projet2024/Projet_data_viz_CZSS

sourceHugging Faceotherupdated 2y agoView on Hugging Face
0likes
shared.py54 linesDownload Raw Back to root
1from datatable import dt, f, by, g, join, sort, update, ifelse, median, min, max, math2import pandas as pd3import numpy as np4 5uc = dt.fread('./data/data_projet.csv')6 7uc[:, update(risque_devise = ifelse(f.devise == 'EUR','Oui','Non')) ]8uc[:, update(risque_devise_cat = ifelse(f.risque_devise == 'Oui',0,1)) ]9uc[:, update(sfdr_cat = ifelse(f.sfdr == 'autre',1,10                               f.sfdr == 'article 6', 2,11                               f.sfdr == 'article 8', 3,12                               f.sfdr == 'artilce 9', 4,13                               0)) ]14uc[:, update(complexite_cat = ifelse(f.complexite == 'Oui',1,0)) ]15uc[:, update(coupon_cat = ifelse(f.coupon == 'Oui',1,0)) ]16 17def scoring(x, type = 'quantitatif', order = 1):18    if type == 'quantitatif':19        return ifelse(order * x == median(order * x), 5,20                      order * x < median(order * x),math.round(500 * (order * x - min(order * x))/(median(order * x)-min(order * x)))/100,21                      order * x > median(order * x),math.round(500 + 500*(order * x - median(order * x))/(max(order * x)-median(order * x)))/100,22                      None)23    elif type == 'qualitatif':24        return ifelse(order * x == median(order * x), 5,25                      order * x < median(order * x),math.round(500 - 500*(median(order * x) - order * x)/(median(order * x)))/100,26                      order * x > median(order * x),math.round(500 + 500*(order * x - median(order * x))/(max(order * x)-median(order * x)))/100,27                      None)28    else :29        return 'type de scoring non reconnu'30 31def encodage_sfdr (vect_sfdr) : 32    sfdr_encode=[]33    for elem in vect_sfdr :34        if elem == 'autre' :35            sfdr_encode+=[1]36        elif elem == 'article 6' :37            sfdr_encode+=[2]38        elif elem == 'article 8' :39            sfdr_encode+=[3]40        elif elem == 'article 9' :41            sfdr_encode+=[4]42        else:43            sfdr_encode+=[0]44    return (sfdr_encode)45 46def encodage_devise(vect_devise) : 47    devise_encode = []48    for elem in vect_devise :49        if elem == 'EUR' :50            devise_encode += [True]51        else : 52            devise_encode += [False]53    return (devise_encode)54