123456789101112131415161718192021222324252627 |
- # -*- coding:utf-8 -*-
- """
- @author: yq
- @time: 2024/1/2
- @desc: 指标计算基类
- """
- import pandas as pd
- import abc
- class MetricBase(metaclass=abc.ABCMeta):
- def __init__(self, metric_name: str, metric_code: str):
- self.metric_name = metric_name
- self.metric_code = metric_code
- @abc.abstractmethod
- def validate_data(self):
- pass
- @abc.abstractmethod
- def load_data(self, *args, **kwargs) -> pd.DataFrame:
- pass
- @abc.abstractmethod
- def calculate(self, *args, **kwargs) -> pd.DataFrame:
- pass
|