diff --git a/asset_original/coef_asso.txt b/asset_original/coef_asso.txt index 1b583491f1e7452fff002daa1c85662b75fec0aa..e889da5668616f247fed619af7e83eeefe4af443 100644 --- a/asset_original/coef_asso.txt +++ b/asset_original/coef_asso.txt @@ -1,49 +1,40 @@ AlexandrIIE : 5 -Apéral : 10 -Arise : 100 +ARISE : 100 BDS : 60 -Baka : 30 +Bakaclub : 30 Bakanim' : 40 BdE : 100 CiD : 25 CCCM : 50 -CIIrquE : 0 -ComDiie : 25 -ComWEI : 80 +Comdiie : 25 CraftIIE : 5 CuIsInE : 45 DansIIE : 45 DataScIIEnce : 15 Dièse : 50 EchequIIE : 30 -ÉcologIIE : 10 -ENiiGMe : 0 +EcologIIE : 10 FiLiGRANe : 10 FinancIIE : 5 Forum : 70 Gala : 60 GuIIldE : 25 -Houdiniie : 0 i-TV : 70 IIE++ : 35 IImagE : 40 -IImondE : 0 -InclusivE : 0 Kryptosphère : 60 LanPartIIE : 55 LeBar(c) : 95 -Liien : 70 +LiieN : 70 LudIIE : 20 LumIIEre : 10 MissterIIE : 35 Muzzik' : 50 NightIIEs : 50 -ORiGiNe : 0 ParoleDeHyène : 35 -PiiXel : 40 +PiiXeL : 40 PomPom : 40 Radioactive : 5 -RDDiie : 0 SecuritIIE : 10 Siieste : 5 SmashIIE : 25 diff --git a/asset_original/coef_listes.txt b/asset_original/coef_listes.txt index 1385c7f16d264f10841b6fd87364005d6149a3c4..de44826c4c745289e57c5d5fd43a34e39bfae580 100644 --- a/asset_original/coef_listes.txt +++ b/asset_original/coef_listes.txt @@ -1,6 +1,6 @@ -ÉquIlIbre : 45 +EquIlIbre : 45 TIIMELESS : 80 OnIrIquE : 80 ChIImpanzEd : 40 IInvadErs : 45 -ObscurIItÉ : 45 +ObscurIItE : 45 diff --git a/asset_original/points_asso_S1S3S5_2024.csv b/asset_original/points_asso_S1S3S5_2024.csv index 2d6ae3a95d5c32ac2e963a5e17d85c4ddbe9dd89..7a5a03ec3c71deb6604ff0aa2498c21b528c27f2 100644 --- a/asset_original/points_asso_S1S3S5_2024.csv +++ b/asset_original/points_asso_S1S3S5_2024.csv @@ -1,4 +1,4 @@ -NOM,Prénom,Formation,Asso,ARISE,Alexandriie,BDE,BDS,Bakaclub,Bakanim,CBDE,CCCM,ChIImpanzEd,CiD,Comdiie,CraftIIE,CuIsInE,DansIIE,DataScIIEnce,Dièse,ECOLOGIIE,EchequIIE,FiLiGRANe,FinancIIE,Forum,Gala,GuIIldE,I-TV,IIE++,IINVADERS,IImagE,Kryptosphere,LanPartIIE,LeBar(c),LiieN,LudIIE,LumIIEre,MissterIIE,Muzzik',NightIIEs,Obscurite,OnIrIquE,ParoleDeHyène,PiiXeL,PomPom,Radioactive,SURFIIE,Securitiie,Siieste,SmashIIE,SoutIIEN,SymphonIIE,TIIMELESS,VocalIIsE,,Assos,Total +NOM,Prénom,Formation,Asso,ARISE,AlexandrIIE,BdE,BDS,Bakaclub,Bakanim',EquIlIbre,CCCM,ChIImpanzEd,CiD,Comdiie,CraftIIE,CuIsInE,DansIIE,DataScIIEnce,Dièse,EcologIIE,EchequIIE,FiLiGRANe,FinancIIE,Forum,Gala,GuIIldE,i-TV,IIE++,IInvadErs,IImagE,Kryptosphère,LanPartIIE,LeBar(c),LiieN,LudIIE,LumIIEre,MissterIIE,Muzzik',NightIIEs,ObscurIItE,OnIrIquE,ParoleDeHyène,PiiXeL,PomPom,Radioactive,SurfIIE,SecuritIIE,Siieste,SmashIIE,SoutIIEn,SymphonIIE,TIIMELESS,VocalIIsE,,Assos,Total ABAHAMOU,Ziad,FISE,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,0 ABDEL WEDOUD,Yahdhih,FISE,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,0 ABDELNOUR,Kevin,FISE,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,0 diff --git a/script/src/csv.cmo b/script/src/csv.cmo index f187c9f703755d66f8ab8051b13dfff4c618a038..c487467b1467f7f84a01bf832edbc552dc131ec3 100644 Binary files a/script/src/csv.cmo and b/script/src/csv.cmo differ diff --git a/script/src/csv.ml b/script/src/csv.ml index d568392d41ac4b803ea7d2ead8fa9dfed55e50a9..e9e0e9b33bea070d3ae694f515f57c46d10bb05b 100644 --- a/script/src/csv.ml +++ b/script/src/csv.ml @@ -27,7 +27,7 @@ let open_as_csv name = let rec trouve_indice l elt = match l with - |[] -> (-1) + |[] -> failwith "Indice non trouvé !" |x :: tl -> if String.equal x elt then 0 else 1 + (trouve_indice tl elt) @@ -52,13 +52,33 @@ let merge_column rand_csv col_name1 col_name2 new_col_name f = {column_name = new_col_name;data = new_data} -let map rand_csv col_name f = +let map rand_csv col_name f = begin let idx = trouve_indice rand_csv.column_name col_name in let new_data = List.map (fun a -> (a.(idx) <- f a.(idx);a)) rand_csv.data in {column_name = rand_csv.column_name;data = new_data} +end + +let map_line rand_csv f = + let htab = Hashtbl.create (List.length rand_csv.column_name) in + let n = List.length rand_csv.column_name in + let col_name_arr = Array.of_list rand_csv.column_name in + let rec save_line a l i = + match l with + |[] -> () + |x :: tl -> (Hashtbl.replace htab x a.(i);save_line a tl (i+1)) + in + let map_l a = begin + save_line a rand_csv.column_name 0; + (f htab); + Array.init n (fun i -> Hashtbl.find htab (col_name_arr.(i))); + end + in + let new_data = List.map map_l rand_csv.data in + {column_name = rand_csv.column_name;data = new_data} + let iter rand_csv col_name f = diff --git a/script/src/point_assos_to_gephi.ml b/script/src/point_assos_to_gephi.ml index a1cc582b7b19164143863149d1781ddab5aef984..a7392ebfd3100768d906fa65adb2220523089ff1 100644 --- a/script/src/point_assos_to_gephi.ml +++ b/script/src/point_assos_to_gephi.ml @@ -1,4 +1,14 @@ +let apply_coef csv_coef csv_note = + Csv.map_line csv_coef (fun tab_h -> begin + let nom = Hashtbl.find tab_h "Nom" in + let c = Hashtbl.find tab_h "Coef" in + Printf.printf "nom_asso : %s,coef_asso : %s \n" nom c; + Csv.map csv_note nom (fun coef_original -> ((*Printf.printf " coef_original:%s,c:%s\n" coef_original c; *) + if c = "" || coef_original = "" then "" else string_of_float((float_of_string coef_original)*.(float_of_string c)))) + end + ) + let () = begin let point_asso_path = "../../asset_original/points_asso_S1S3S5_2024.csv" in (*Ouverture point assos*) @@ -9,9 +19,13 @@ let () = begin (*Ouverture coef listes*) let coef_liste_path = "../../res_script/coef_listes.csv" in let coef_liste = Csv.open_as_csv coef_liste_path in - print_endline "J'ai ouvert tout mes fichiers ! " - + print_endline "J'ai ouvert tout mes fichiers ! "; + + let _ = apply_coef coef_asso points_assos in + let _ = apply_coef coef_liste points_assos in + Csv.save points_assos "../../res_script/point_assos_re_coefficiente.csv" + end diff --git a/script/src/csv.mli b/script/src/truchmiuch similarity index 88% rename from script/src/csv.mli rename to script/src/truchmiuch index 8a24af3f1f959c9d3df5bddb6579e0d15e3145d3..684c133e766eaf0912b923cd50919a98c026066a 100644 --- a/script/src/csv.mli +++ b/script/src/truchmiuch @@ -9,6 +9,8 @@ let merge_column : csv -> string -> string -> string -> (string -> string -> str let map : csv -> string -> (string -> string) -> csv +let map_line : csv -> ((string, string) Hashtbl.t -> 'a) -> csv + let iter : csv -> string -> (string -> ()) -> () let save : csv -> string -> ()