Browse Source

ecriture de la fonction distance prenant compte des jours (pas sur si c'est ce qu'il faut faire tho)

master
denis leenaerts 3 weeks ago
parent
commit
4ee09f0530
  1. 16
      projet_knn_feat_denis_le_goat.py

16
projet_knn_feat_denis_le_goat.py

@ -1,11 +1,12 @@
import tkinter as tk
from math import sqrt
def transfoEnInt(groupe):
"""Prend en parametre un tuple ou une liste de réels de type str
et renvoie une liste de réels de type int"""
lst = []
for elements in groupe:
lst += [int(elements)]
for element in groupe:
lst += [int(element)]
return lst
def lecture(nomFichier):
@ -39,15 +40,20 @@ def distance(Tuple1 , Tuple2):
de référence) et renvoie la distance **euclidienne**"""
lst1 = transfoEnInt(Tuple1)
lst2 = transfoEnInt(Tuple2)
return lst1[0]-lst2[0] + lst1[1]-lst2[1] + lst1[2]-lst2[2]
JoursOrdonnes = sorted([lst1[0],lst2[0]])
DiffJours = min([JoursOrdonnes[1]-JoursOrdonnes[0],365-JoursOrdonnes[1]+JoursOrdonnes[0]])
return sqrt(DiffJours**2 + (lst1[1]-lst2[1])**2+(lst1[2]-lst2[2])**2)
def kPlusProches(point,lstRepre):
"""Prend en parametre un tuple avec (Numéro du jour, Température moyenne,
température de référence) correspondant au point à verifier, une liste de
tuples de meme type et la consommation electrique
Renvoie une liste triée en fonction de la distance avec le"""
fenetre = tk.Tk()
fenetre.title("pour l'instant je sais pas quoi (FEUR) mettre")
fenetre.title("pour l'instant je sais pas quoi (FEUR) mettre") #Un truc comme gestionnaire du transport d'electricité non ? ou je pense que sur tkinter tu peux faire disparaitre
#le dessus (mais faut rajouter un bouton pour fermer la fenetre et tout c'est galere)
canva = tk.Canvas(fenetre, width = 400, height = 300, bg = "springgreen")
canva.grid()
@ -59,5 +65,5 @@ entree.grid()
entree.bind("<Button>", lambda e:value.set(""))
texte = tk.Entry()
lecture('pic-journalier-consommation-brute-2023.csv')
print(distance((1,1,1),(2,2,2)))
fenetre.mainloop()
Loading…
Cancel
Save