# -*- 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