""" This package contains reference implementations for Pasteur modules, which
may be extracted to a separate package in the future."""
from __future__ import annotations
from typing import TYPE_CHECKING
if TYPE_CHECKING:
from ..dataset import Dataset
from ..module import Module
from ..view import View
[docs]
def get_recommended_datasets() -> list[Dataset | View]:
from .datasets.adult import AdultDataset
from .datasets.mimic import MimicDataset
from .datasets.texas import TexasDataset
# from .datasets.boston import BostonDataset
from .datasets.pad import PadDataset
from .datasets.rfel import ConsumerExpendituresDataset, StudentLoanDataset
from .views.adult import TabAdultView
from .views.mimic import MimicCore, MimicTabAdmissions
from .views.rfel import ConsumerExpendituresView
# from .views.boston import BostonView
# from .views.texas import TexasChargesView, TexasBaseView, TexasBillionView
return [
# Views and Datasets
AdultDataset(),
# BostonDataset(),
MimicDataset(),
PadDataset(),
# TexasDataset(),
# TexasChargesView(),
# TexasBaseView(),
TabAdultView(),
# BostonView(),
# MimicCore,
MimicTabAdmissions(),
# TexasBillionView(),
ConsumerExpendituresDataset(),
StudentLoanDataset(),
ConsumerExpendituresView(),
]
[docs]
def get_recommended_system_modules() -> list[Module]:
from .encoders import IdxEncoder, NumEncoder
from .metrics.distr import DistributionMetric
from .metrics.visual import (
CategoricalHist,
DateHist,
DatetimeHist,
FixedHist,
NumericalHist,
OrdinalHist,
TimeHist,
SeqHist,
)
# from .synth.extern import AimSynth, PrivMrfSynth
from .synth.privbayes import PrivBayesSynth
from ..synth import IdentSynth
from .transformers import (
DatetimeTransformer,
DateTransformer,
FixedValueTransformer,
IdxTransformer,
NumericalTransformer,
OrdinalTransformer,
TimeTransformer,
)
# from .metrics.models import (
# ModelMetric,
# XGBoostlassifierModel,
# # RandomForestClassifierSklearn,
# )
return [
# Transformers
DatetimeTransformer.get_factory(),
DateTransformer.get_factory(),
TimeTransformer.get_factory(),
FixedValueTransformer.get_factory(),
IdxTransformer.get_factory(),
OrdinalTransformer.get_factory(),
NumericalTransformer.get_factory(),
# Encoders
IdxEncoder.get_factory(),
NumEncoder.get_factory(),
# Synthesizers
IdentSynth.get_factory(),
PrivBayesSynth.get_factory(),
# AimSynth.get_factory(),
# PrivMrfSynth.get_factory(),
# Metrics
DistributionMetric.get_factory(),
NumericalHist.get_factory(),
OrdinalHist.get_factory(),
CategoricalHist.get_factory(),
FixedHist.get_factory(),
DateHist.get_factory(),
TimeHist.get_factory(),
DatetimeHist.get_factory(),
SeqHist.get_factory(),
# ModelMetric.get_factory(XGBoostlassifierModel),
]
[docs]
def get_recommended_modules() -> list[Module]:
return get_recommended_datasets() + get_recommended_system_modules()