metric_base.py 459 B

1234567891011121314151617181920212223242526
  1. # -*- coding:utf-8 -*-
  2. """
  3. @author: yq
  4. @time: 2024/1/2
  5. @desc: 指标计算基类
  6. """
  7. import abc
  8. import pandas as pd
  9. from entitys import MetricFucEntity
  10. class MetricBase(metaclass=abc.ABCMeta):
  11. @abc.abstractmethod
  12. def validate_data(self):
  13. pass
  14. @abc.abstractmethod
  15. def load_data(self, *args, **kwargs) -> pd.DataFrame:
  16. pass
  17. @abc.abstractmethod
  18. def calculate(self, *args, **kwargs) -> MetricFucEntity:
  19. pass