Browse Source

distance

master
gabrie.chataigner 2 years ago
parent
commit
0451abfb19
  1. 55
      KNN_Mark1.py
  2. BIN
      Thumbs.db

55
KNN_Mark1.py

@ -25,28 +25,35 @@ def lecture(fichier):
def estBissextile(an):
"""Fonction estBissextile qui prend en paramètre l’année à vérifier et qui renvoie True si elle est bissextile, False sinon"""
an_base = an
an = an//4
if an*4 == an_base:
return True
else:
return False
def kPlusProches(k,donnees_point,temp_num_jour):
# an_base = an
# an = an//4
# if an*4 == an_base:
# return True
# else:
# return False
return an % 4 == 0
def kPlusProches(k,donnees_point,donnees):
"""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."""
if k > len(temp_num_jour):
k = len(temp_num_jour)
if k > len(donnees): #par sécurité on réduit k
k = len(donnees)
voisin=[]
for j in range(k):
voisin.append([None])
for i in range(len(donnees)):
voisin.append(distance(donnees, donnees_point))
voisin.sorted
return [voisins[i] for i in range(k)]
# for j in range(k):
# voisin.append([None])
for i in range(len(temp_num_jour)):
MN = distance(temp_num_jour[i],donnees_point)
for l in range(k):
if voisin[l][1] == None or MN<voisin[l][4]:
# for i in range(len(temp_num_jour)):
# MN = distance(temp_num_jour[i],donnees_point)
# for l in range(k):
# if voisin[l][1] == None or MN<voisin[l][4]:
# pass
# print(voisin)
# for m in range(k-l):
# print(voisin)
@ -128,17 +135,23 @@ def distance(temp_num_jour, donneespoint):
"""Fonction qui dit qu'en prenant des points et ben on peut trouver une distance entre 2 point"""
x1 = temp_num_jour[0]
x2 = donneespoint[0]
d1 = x1-x2
d2 = 365 - d1
d_final = d1
if d1 > d2:
d_final = d2
y1 = temp_num_jour[2]
y2 = donneespoint[1]
z1 = temp_num_jour[3]
z2 = donneespoint[2]
MN = ((x1-x2)**2)+((y1-y2)**2)+((z1-z2)**2)
return MN
return ((d_final)**2)+((y1-y2)**2)+((z1-z2)**2)
def PuissanceMoyenne(lst,distance):
def PuissanceMoyenne(lst,dist):
"""Calcule la moyenne de distances entre les points """
lecture("pic-journalier-consommation.csv")
moy = sum() / len()
conso_moy = sum() / len()
def recup1():
k = 5 #value1.get()

BIN
Thumbs.db

Binary file not shown.
Loading…
Cancel
Save