Итак, я создал библиотеку python для вычисления метрик ошибок между временными рядами ( здесь ).Когда я впервые создавал библиотеку, я был начинающим программистом с почти нулевым предыдущим опытом, поэтому для каждой метрики ошибки я просто писал ее как функцию.Сегодня я подумал, что было бы неплохо, если бы каждая метрика ошибки была представлена как класс, чтобы пользователь мог сделать что-то вроде следующего.
# Name of the package
import HydroErr as he
he.r_squared.description # Would return out a brief metric description
Я бы хотел сохранить синтаксис старого API нетронутым, илиэто сломало бы весь унаследованный код.Это должно было бы выглядеть примерно так, когда имитируются и передаются данные наблюдений.
import HydroErr as he
import numpy as np
he.r_squared(np.array([1, 2, 3]), np.array([1.1, 1.21, 1.3]))
# Out: 0.9966777408637874
Я не совсем уверен, как это сделать, и что более важно, если я должен это сделать.Любая помощь будет оценена.