ebilab.analysis._actions のソースコード

from __future__ import annotations

from pathlib import Path
from typing import Union, Callable, List
from dataclasses import dataclass

import pandas as pd

@dataclass
class DfAction:
    handler: Callable[[pd.DataFrame], pd.DataFrame]
    key: str

    def get_key(self):
        return self.key

@dataclass
class DfPlotter:
    handler: Callable[[pd.DataFrame, Union[str, Path]], None]
    key: str

    def get_key(self):
        return self.key

@dataclass
class AggregatedDfPlotter:
    handler: Callable[[List[pd.DataFrame], Union[str, Path]], None]
    key: str

    def get_key(self):
        return self.key


[ドキュメント] def df_action(key: str): def decorator(func: Callable[[pd.DataFrame], pd.DataFrame]): return DfAction(handler=func, key=key) return decorator
[ドキュメント] def df_plotter(key: str): def decorator(func: Callable[[pd.DataFrame, Union[str, Path]], None]): return DfPlotter(handler=func, key=key) return decorator
[ドキュメント] def agg_df_plotter(key: str): def decorator(func: Callable[[List[pd.DataFrame], Union[str, Path]], None]): return AggregatedDfPlotter(handler=func, key=key) return decorator