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 import tkinter as tk
from math import sqrt
def transfoEnInt(groupe): def transfoEnInt(groupe):
"""Prend en parametre un tuple ou une liste de réels de type str """Prend en parametre un tuple ou une liste de réels de type str
et renvoie une liste de réels de type int""" et renvoie une liste de réels de type int"""
lst = [] lst = []
for elements in groupe: for element in groupe:
lst += [int(elements)] lst += [int(element)]
return lst return lst
def lecture(nomFichier): def lecture(nomFichier):
@ -39,15 +40,20 @@ def distance(Tuple1 , Tuple2):
de référence) et renvoie la distance **euclidienne**""" de référence) et renvoie la distance **euclidienne**"""
lst1 = transfoEnInt(Tuple1) lst1 = transfoEnInt(Tuple1)
lst2 = transfoEnInt(Tuple2) 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): def kPlusProches(point,lstRepre):
"""Prend en parametre un tuple avec (Numéro du jour, Température moyenne, """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 température de référence) correspondant au point à verifier, une liste de
tuples de meme type et la consommation electrique tuples de meme type et la consommation electrique
Renvoie une liste triée en fonction de la distance avec le""" Renvoie une liste triée en fonction de la distance avec le"""
fenetre = tk.Tk() 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 = tk.Canvas(fenetre, width = 400, height = 300, bg = "springgreen")
canva.grid() canva.grid()
@ -59,5 +65,5 @@ entree.grid()
entree.bind("<Button>", lambda e:value.set("")) entree.bind("<Button>", lambda e:value.set(""))
texte = tk.Entry() texte = tk.Entry()
lecture('pic-journalier-consommation-brute-2023.csv') print(distance((1,1,1),(2,2,2)))
fenetre.mainloop() fenetre.mainloop()
Loading…
Cancel
Save