Bonjour à tous,
je suis en ce moment en train de coder un programme pour trouver les attributs d'une série statistique (médiane, étendue, quartile, etc.).
Après un peu de temps j'arrive enfin à la fin mais lors de mes tests il apparait l'erreur
1 | TypeError: 'NoneType' object is not iterable |
je ne comprends pas cette erreur donc je demande votre aide. Voici mon code :
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 | class statSerie(object): def __init__(self, serie): self.serie = serie.sort() self.refresh() def __repr__(self): to_return = "; ".join(self.serie) to_return += "\nétendue = %d; mediane = %d; q1 = %d; q2 = %d; moyenne = %d"\ %(self.etendue, self.mediane, self.q1, self.q2, self.moyenne) return to_return def cal_etendue(self): self.etendue = max(self.serie) - min(self.serie) def cal_mediane(self): nbr_valeur = self.serie.len() if (nbr_valeur%2): self.mediane = self.serie[int(nbr_valeur/2) + 1] else: self.mediane = (self.serie[nbr_valeur/2] + \ self.serie[nbr_valeur/2 + 1])/2 def cal_q1(self): q1_index = int(self.serie.len()/4) + 1 self.q1 = self.serie[q1_index] def cal_q3(self): q3_index = int(self.serie.len()/4*3) + 1 self.q3 = self.serie[q3_index] def cal_moyenne(self): self.moyenne = sum(self.serie)/self.serie.len() def refresh(self): self.cal_etendue() self.cal_mediane() self.cal_q1() self.cal_q2() self.cal_moyenne() def append(self, to_append): try: self.serie.append(float(to_append)) self.refresh() except TypeError: print("error : no numeric variable") |
Merci d'avance de votre aide
+0
-0