diff --git a/lottery_predictor/analyze.py b/lottery_predictor/analyze.py index a871a83..76d1b42 100644 --- a/lottery_predictor/analyze.py +++ b/lottery_predictor/analyze.py @@ -11,7 +11,13 @@ import util.drawing as drawutil def load_dataframe( table_name: str, start_date: datetime | None = None, end_date: datetime | None = None ) -> pd.DataFrame: - """connect to the database and load game data into a pandas dataframe""" + """ + :param table_name: the name of the table to load data from + :param start_date: the start date for the data + :param end_date: the end date for the data + + :returns: a pandas DataFrame containing the data + """ dal.connect() session = dal.Session() @@ -36,10 +42,15 @@ def load_dataframe( def get_most_common_number( - data_frame: pd.DataFrame, - columns: list | None = None, - top: int = 1 + data_frame: pd.DataFrame, columns: list | None = None, top: int = 1 ) -> list[int]: + """ + :param data_frame: a pandas DataFrame containing the data + :param columns: a list of column names to use + :param top: the number of top (most seen) numbers to return + + :returns: a list of the most common numbers + """ if columns is None: columns = ['main_ball1', 'main_ball2', 'main_ball3', 'main_ball4', 'main_ball5'] flat_numbers = data_frame[columns].values.flatten() @@ -48,10 +59,15 @@ def get_most_common_number( def get_least_common_number( - data_frame: pd.DataFrame, - columns: list | None = None, - bottom: int = 1 + data_frame: pd.DataFrame, columns: list | None = None, bottom: int = 1 ) -> list[int]: + """ + :param data_frame: a pandas DataFrame containing the data + :param columns: a list of column names to use + :param bottom: the number of bottom (least seen) numbers to return + + :returns: a list of the least common numbers + """ if columns is None: columns = ['main_ball1', 'main_ball2', 'main_ball3', 'main_ball4', 'main_ball5'] flat_numbers = data_frame[columns].values.flatten()