diff --git a/KNN_Mark1.py b/KNN_Mark1.py index 9d8aee3..71eeb4e 100644 --- a/KNN_Mark1.py +++ b/KNN_Mark1.py @@ -5,7 +5,7 @@ def lancer(k, date, temp_moy, temp_ref, temp_num_jour): donnees_point = [date, temp_moy, temp_ref] print(k) print(donnees_point) - print(temp_num_jour) + #print(temp_num_jour) kPlusProches(k, donnees_point, temp_num_jour) #estBissextile(an) @@ -32,18 +32,30 @@ def estBissextile(an): else: return False -def kPlusProches(k, donnees_point, temp_num_jour): +def kPlusProches(k,donnees_point,temp_num_jour): """Fonction qui prend en paramètre un tuple correspondant au point à vérifier, une liste du jeu de données et la conso électrique. Renvoie une liste triée en fonction de la distance dont les éléments sont des tuples.""" - voisins = [] + if k > len(temp_num_jour): k = len(temp_num_jour) + voisin=[] + for j in range(k): + voisin.append([None]) + for i in range(len(temp_num_jour)): - d = distance(temp_num_jour[i],donnees_point) - voisins.append((d, i)) - voisins.sort() - return [voisins[i][1] for i in range(k)] + MN = distance(temp_num_jour[i],donnees_point) + for l in range(k): + if voisin[l][1] == None or MN