4. ДЗ3 - november-pain/Coronavirus_research GitHub Wiki

Опис абстрактного типу даних

Для вирішення задачі дослідження потрібні наступні абстрактні типи даних:

Клас SeriesArray має такі методи:

  • def __init__(self) - ініціалізація.
  • def _create_arr(self, volume) - внутрійшній метод для створення низькорівневого масиву з вказаним розміром.
  • def copy_arr(self) - повертає копію масиву.
  • def __setitem__(self, index, value) - ставить елемент на певне місце у масиві за індексом.
  • def __contains__(self, item) - перевіряє чи елемент є в масиві.
  • def __iter__(self) - ітератор.
  • def __len__(self) - повертає кількість елементів у масиві.
  • def __getitem__(self, index) - повертає елемент масиву за його індексом.
  • def _resize(self, volume) - внутрішній метод для зміни розміру масиву.
  • def _isFull(self) - внутрішній метод який перевіряє чи масив заповнений.
  • def append(self, item) - додає елемент в кінець масиву.
  • def remove(self, item) - видаляє перший зразок елементу з масиву.
  • def insert(self, item, index) - додає елемент в масив на конкретну позицію.
  • def map(self, func) - виконує певну дію з кожним елементом масиву.
  • def __str__(self) - рядкова репрезентація масиву.

Клас DataFrame представляє собою структуру даних яка нагадує таблицю. Він містить такі методи:

  • def __init__(self) - ініціалізація.
  • def add_column(self, arr) - додавання стовпця.
  • def add_row(self, arr) - додавання рядка.
  • def reverse_rows(self) - повертає розвернуту таблицю.
  • def map_column(self, index, func) - застосовує функцію для кожного значення в обраному стовпці.
  • def map_row(self, index, func) - застосовує функцію для кожного значення в обраному рядку.
  • def avarage_ratio_of_growth_rates - розраховує середнє відношення темпів приросту значень між двома вказаними стовпцями.
  • def csv_to_df(self, path, column_range) - зчитує csv файл та поміщає вказані колонки в DataFrame.
  • def __str__(self) - повертає вигляд таблиці у рядковому форматі.

Діаграма класів.

https://github.com/november-pain/Coronavirus_research/tree/master/diagram