Войти
или
Зарегистрироваться
Курсы
Учебник
Учебник 2.0
ОГЭ/ЕГЭ
Олимпиады
Рубрикатор
Компилятор
Статья Автор:
Захарова Дарья
Отчет. Критерий С.
with open('gym.csv', 'r') as f: d = {} names = [] for line in f: vals = line.strip().split(',') if vals[0] == 'Age': for val in vals: d[val] = [] names = vals else: for i in range(len(vals)): if i not in {1, 9}: try: d[names[i]].append(float(vals[i])) except ValueError: d[names[i]].append(None) else: d[names[i]].append(vals[i]) for name in names: if name in {'Gender', 'Workout_Type'}: continue col = [x for x in d[name] if x is not None] if len(col) == 0: print(f"Column {name} has no valid data.") continue print(f'Column: {name}') # Мин и Макс print(f'Min: {min(col)}') print(f'Max: {max(col)}') # Среднее значение mean = sum(col) / len(col) print(f'Mean: {mean}') # Медиана col.sort() median = (col[(len(col)-1)//2] + col[len(col)//2]) / 2 print(f'Median: {median}') # Мода freqs = {} for val in col: freqs[val] = freqs.get(val, 0) + 1 max_freq = max(freqs.values()) modes = [k for k, v in freqs.items() if v == max_freq] print(f'Mode(s): {modes}') # Дисперсия variance = sum([(val - mean) ** 2 for val in col]) / (len(col) - 1) print(f'Variance: {variance}') # Стандартное отклонение stdev = variance ** 0.5 print(f'Standard Deviation: {stdev}')
×
Прикрепленные файлы
gym.csv
Чтобы оставить комментарий нужна авторизация
Печать