metric_entity.py 1.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071
  1. # -*- coding: utf-8 -*-
  2. """
  3. @author: yq
  4. @time: 2024/11/1
  5. @desc: 常用指标实体集合
  6. """
  7. import pandas as pd
  8. from commom import f_format_float
  9. class MetricTrainEntity():
  10. """
  11. 模型训练结果指标类
  12. """
  13. def __init__(self, train_auc: float, train_ks: float, test_auc: float, test_ks: float,
  14. train_perf_image_path: str = None, test_perf_image_path: str = None):
  15. self._train_auc = f_format_float(train_auc)
  16. self._train_ks = f_format_float(train_ks)
  17. self._train_perf_image_path = train_perf_image_path
  18. self._test_auc = f_format_float(test_auc)
  19. self._test_ks = f_format_float(test_ks)
  20. self._test_perf_image_path = test_perf_image_path
  21. def __str__(self):
  22. return f"train_auc:{self._train_auc} train_ks:{self._train_ks}\ntest_auc:{self._test_auc} test_ks:{self._test_ks}"
  23. @property
  24. def train_auc(self):
  25. return self._train_auc
  26. @property
  27. def train_ks(self):
  28. return self._train_ks
  29. @property
  30. def test_auc(self):
  31. return self._test_auc
  32. @property
  33. def test_ks(self):
  34. return self._test_ks
  35. class MetricFucEntity():
  36. """
  37. 指标计算函数结果类
  38. """
  39. def __init__(self, table: pd.DataFrame = None, value: str = None, image_path: str = None):
  40. self._table = table
  41. self._value = value
  42. self._image_path = image_path
  43. @property
  44. def table(self) -> pd.DataFrame:
  45. return self._table
  46. @property
  47. def value(self):
  48. return self._value
  49. @property
  50. def image_path(self):
  51. return self._image_path
  52. if __name__ == "__main__":
  53. pass