Друкарня від WE.UA

Обчислення похибок вимірювань у Python

Зміст

Всіх вітаю! У сьогоднішній статті ми створимо програму для обчислення похибок, а саме абсолютної та відносної. Також детально розглянемо код та протестуємо його.

Основні визначення

Що таке абсолютна похибка?

Абсолютна похибка — це різниця між вимірюваним значенням та середнім значенням.

Формула абсолютної похибки виглядає так:

формула абсолютної похибки

Значення

Визначення

a (виміряне)

Виміряне значення, похибку якого ми хочемо обчислити

a (середнє)

Середнє значення виміряної величини.

Що таке відносна похибка?

Відносна похибка — це відношення абсолютної похибки та середнього значення.

Формула відносної похибки виглядає так:

формула відносної похибки

Значення

Визначення

a (абсолютне)

Абсолютна похибка.

a (середнє)

Середнє значення виміряної величини.

Створення програми

Структура коду

Для початку слід вирішити, яку саме структуру коду ми будемо використовувати. Ми будемо писати програму за допомогою класу та методів. Тобто будемо притримуватися концепції ООП.

Отже, на початку створюємо клас та методи:

class ErrorsAnalysis:
    def __init__(self):
        pass

    def absolute_error(self):
        pass

    def relative_error(self):
        pass

    def results(self):
        pass

Тепер нам треба записати головні атрибути у конструкторі def __init__(self) для нашого майбутнього об’єкта:

class ErrorsAnalysis:
    def __init__(self, measured_value):
        self.measured_value = measured_value
        self.absolute = 0
        self.relative = 0

    def absolute_error(self):
        pass

    def relative_error(self):
        pass

    def results(self):
        pass

Поля

Означення

self.measured_value

Це атрибут є єдиним, який ми вказуємо у класі. У цей параметр ми буде записувати список з даними, які хочемо дослідити на похибки.

self.absolute

Результат абсолютної похибки.

self.relative

Результат відносної похибки.

Створення методу для обчислення абсолютної похибки

Далі перейдемо до реалізації методів у нашому класі. Спершу створимо метод для обчислення абсолютної похибки:

def absolute_error(self):
    absolute_values = []
    middle_value = sum(self.measured_value) / (len(self.measured_value))

    for unit in self.measured_value:
        self.absolute = abs(unit - middle_value)
        absolute_values.append(self.absolute)

    self.absolute = max(absolute_values)
    return self.absolute

Створюємо окремий список суто для обчислених абсолютних значень:

absolute_values = []

Обчислюємо середнє значення нашого списку з даними:

middle_value = sum(self.measured_value) / (len(self.measured_value))

У цій частині ми створюємо цикл for, де проходимося по кожному значенню у списку з даними. Далі у тілі циклу обчислюємо абсолютну похибку та додаємо у список absolute_values:

for unit in self.measured_value:
    self.absolute = abs(unit - middle_value)
    absolute_values.append(self.absolute)

Далі визначаємо максимальне значення у списку absolute_values та записуємо у атрибут self.absolute:

self.absolute = max(absolute_values)

Повертаємо значення абсолютної похибки:

return self.absolute

Створення методу для обчислення відносної похибки

Наступним кроком створюємо метод relative_error(self) для обчислення відносної похибки. Ось повний код методу:

def relative_error(self):
    middle_value = sum(self.measured_value) / (len(self.measured_value))
    self.relative = (self.absolute / middle_value) * 100

    return self.relative

Спершу обчислюємо середнє значення:

middle_value = sum(self.measured_value) / (len(self.measured_value))

Обчислюємо відносну похибку:

self.relative = (self.absolute / middle_value) * 100

Тестування коду

У кінці-кінців слід протестувати код та зрозуміти, чи працює він. Запустимо код та отримаємо наступні результати:

Measurement results:
Absolute error: 3.43
Relative_error: 48.75%

Висновок

У цьому матеріалі ми ознайомилися з тим, що таке абсолютна та відносна похибки як їх обчислювати. Також ми розглянули як писати код зі структурою ООП. Всім дякую за увагу!

Статті про вітчизняний бізнес та цікавих людей:

  • Як побудована програма Meest China Academy

    Курс про товарний бізнес охоплює різні етапи роботи: від пошуку ідеї до перевірки товару, логістики та масштабування. Програма Meest China Academy містить 17 модулів, які послідовно розкривають ці теми без зведення всього навчання до однієї універсальної поради.

    Теми цього довгочиту:

    Meest
  • Які технології використані в Айфон 17

    Айфон 17 поєднує OLED-дисплей із частотою до 120 Гц, чип A19, дві камери Fusion 48 Мп і швидке заряджання через USB-C. У COMFY можна купити Айфон 17 з накопичувачем на 256 або 512 ГБ, вибравши конфігурацію відповідно до обсягу фото, відео та застосунків

    Теми цього довгочиту:

    Iphone 17
  • Як вибрати вживаний iPhone: коротке керівництво для розумної покупки

    Вторинний ринок смартфонів Apple активно зростає, і питання, як вибрати вживаний iPhone, стає актуальним для дедалі більшої кількості користувачів. Правильний підхід дозволяє отримати бу iPhone з актуальною iOS і доброю камерою за помітно нижчу ціну, ніж у нових пристроїв.

    Теми цього довгочиту:

    Iphone
  • Як подолати жіночу безплідність за допомогою донорських яйцеклітин

    Діагноз "безпліддя" рідко звучить як вирок одразу. Для багатьох жінок саме в цей момент вперше звучить словосполучення "донорські яйцеклітини" — і це часто не кінець шляху до материнства, а якраз новий, реальний шанс.

    Теми цього довгочиту:

    Донорство
  • Як заспокоїти зубний біль і чому самолікування може призвести до операції?

    Раптовий біль у зубі може призвести до порушення сну та ускладненого вживання їжі. Люди часто приймають таблетки, роблять полоскання або лікуються народними засобами. В таких випадках не варто відкладати візит до стоматолога, адже можуть з’явитись ускладнення.

    Теми цього довгочиту:

    Стоматологія
Поділись своїми ідеями в новій публікації.
Ми чекаємо саме на твій довгочит!
Magnifique numérique
Magnifique numérique@magnifiquedigitalworld

Світ, де код робить чудеса

93Довгочити
1.9KПерегляди
27Підписники
Підтримати
На Друкарні з 14 липня 2025

Більше від автора

  • Метод zfill() у Python

    У цій статті ми розберемо метод zfill() у Python на основі практичних прикладів його використання.

    Теми цього довгочиту:

    It
  • Команда WHERE у SQL

    Сьогодні ми розглянемо команду WHERE та принцип роботи цієї команди.

    Теми цього довгочиту:

    Програмування
  • Робота з омогліфами у Python

    У цій статті ми розберемо бібліотеку confusables та її функціонал. Також ми розглянемо, що таке омогліфи та як їх використовують.

    Теми цього довгочиту:

    Програмування

Це також може зацікавити:

Коментарі (0)

Підтримайте автора першим.
Напишіть коментар!

Це також може зацікавити: