import os import json import argparse from adjusted_goals.goals_per_game import retrieve_goals_per_season from adjusted_goals.goals_per_game import calculate_adjustment_factors from adjusted_goals.goal_leaders import retrieve_career_leaders from adjusted_goals.goal_leaders import retrieve_yearly_top from adjusted_goals.adjust_goals import retrieve_and_adjust_goal_totals from utils import prepare_logging, retrieve_season if __name__ == '__main__': prepare_logging(log_types=['screen']) parser = argparse.ArgumentParser( description="Adjusting individual goal scoring totals in dependance" + "of league-wide scoring rate.") parser.add_argument('steps', metavar='processing_steps', help='Processing step(s) to conduct.', choices=['1', '2', '3', 'all']) parser.add_argument('-f', '--from', dest='from_season', required=False, default=1917, metavar='first season to include in analysis', type=int,
"""Defines CTA Train Model""" from utils import prepare_logging import logging.config logger = prepare_logging(__name__, logging.INFO) from enum import IntEnum class Train: """Defines CTA Train Model""" status = IntEnum("status", "out_of_service in_service broken_down", start=0) def __init__(self, train_id, status): self.train_id = train_id self.status = status if self.status is None: self.status = Train.status.out_of_service def __str__(self): return f"Train ID {self.train_id} is {self.status.name.replace('_', ' ')}" def __repr__(self): return str(self) def broken(self): return self.status == Train.status.broken_down