Projet KNN
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

92 lines
2.7 KiB

def lecture(fichier):
temp_jour = []
with open(fichier, "r") as menu:
menu.readline()
for ligne in menu:
ligne_net = ligne.strip()
lst_ligne = list(ligne_net.split(";"))
temp_jour.append(lst_ligne)
for i in range(len(temp_jour)):
temp_jour[i][1] = float(temp_jour[i][1])
temp_jour[i][2] = float(temp_jour[i][2])
temp_jour[i][3] = float(temp_jour[i][3])
return temp_jour
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 numeroJour(date):
an_mois_jour = list(date.split("-"))
an = int(an_mois_jour[0])
mois = int(an_mois_jour[1])
jour = int(an_mois_jour[2])
if mois == 1:
j_en_plus = 0
elif mois == 2:
j_en_plus = 31
elif mois == 3:
j_en_plus = 59
elif mois == 4:
j_en_plus = 90
elif mois == 5:
j_en_plus = 120
elif mois == 6:
j_en_plus = 151
elif mois == 7:
j_en_plus = 181
elif mois == 8:
j_en_plus = 212
elif mois == 9:
j_en_plus = 243
elif mois == 10:
j_en_plus = 273
elif mois == 11:
j_en_plus = 304
elif mois == 12:
j_en_plus = 334
if estBissextile(an) and mois > 2:
j_en_plus += 1
num_jour = j_en_plus + jour
if num_jour > 365:
num_jour = 365
return num_jour
2 years ago
def moyenne_liste():
temp_jour, = lecture("pic-journalier-consommation.csv")
temp_num_jour = []
for i in range(365):
temp_jour[i][0] = numeroJour(temp_jour[i][0])
for l in range(len(temp_jour)):
lst_conso = []
lst_temp_moy = []
lst_temp_ref = []
moy_conso = 0
moy_temp_moy = 0
moy_temp_ref = 0
for m in range(len(temp_jour)):
if temp_jour[l][0] == i+1:
lst_conso.append(temp_jour[l][1])
lst_temp_moy.append(temp_jour[l][2])
lst_temp_ref.append(temp_jour[l][3])
for n in range(len(lst_conso)):
moy_conso += lst_conso[n]
moy_temp_moy += lst_temp_moy[n]
moy_temp_ref += lst_temp_ref[n]
moy_conso = moy_conso / len(lst_conso)
2 years ago
moy_temp_moy = moy_temp_moy / len(lst_temp_moy)
moy_temp_ref = moy_temp_ref / len(lst_temp_ref)
temp_num_jour.append([i, moy_conso, moy_temp_moy, moy_temp_ref])