freeports_analysis.data

Data module for loading and validating company and financial data.

This module provides functions to load various CSV data files containing company information, target lists, markets, and tickers, with schema validation to ensure data integrity.

Functions

get_companies()

Load and validate the list of companies from companies.csv.

get_companies_additional_buds()

Load and validate additional BUDs from companies_additional_buds.csv.

get_companies_additional_regexs()

Load and validate additional regex patterns from companies_additional_regexs.csv.

get_companies_data()

Load and combine all company-related data into a comprehensive DataFrame.

get_company_to_list()

Load and validate company-to-list mappings from company_to_list.csv.

get_lists()

Load and validate target lists from lists.csv.

get_markets()

Load and validate market information from markets.csv.

get_target_companies(target_lists)

Filter companies data to include only those in specified target lists.

get_tickers()

Load and validate ticker information from tickers.csv.

freeports_analysis.data.get_companies() DataFrame

Load and validate the list of companies from companies.csv.

Returns:

Validated DataFrame of companies with normalized names

Return type:

pd.DataFrame

freeports_analysis.data.get_companies_additional_buds() DataFrame

Load and validate additional BUDs from companies_additional_buds.csv.

Returns:

Validated DataFrame of additional BUDs

Return type:

pd.DataFrame

freeports_analysis.data.get_companies_additional_regexs() DataFrame

Load and validate additional regex patterns from companies_additional_regexs.csv.

Returns:

Validated DataFrame of additional regex patterns

Return type:

pd.DataFrame

freeports_analysis.data.get_companies_data() DataFrame

Load and combine all company-related data into a comprehensive DataFrame.

Returns:

Combined DataFrame containing companies, lists, tickers, BUDs, and regex patterns

Return type:

pd.DataFrame

freeports_analysis.data.get_company_to_list() DataFrame

Load and validate company-to-list mappings from company_to_list.csv.

Returns:

Validated DataFrame mapping companies to their target lists

Return type:

pd.DataFrame

freeports_analysis.data.get_lists() DataFrame

Load and validate target lists from lists.csv.

Returns:

Validated DataFrame of target lists

Return type:

pd.DataFrame

freeports_analysis.data.get_markets() DataFrame

Load and validate market information from markets.csv.

Returns:

Validated DataFrame of markets

Return type:

pd.DataFrame

freeports_analysis.data.get_target_companies(target_lists: List[str] | str) DataFrame

Filter companies data to include only those in specified target lists.

Parameters:

target_lists (Union[List[str], str]) – The required list name or list of list names

Returns:

Filtered DataFrame containing only companies from the specified lists

Return type:

pd.DataFrame

Notes

The returned DataFrame includes all company information but excludes the ‘List names’ column since it’s used for filtering. Companies are included if they belong to any of the specified target lists.

freeports_analysis.data.get_tickers() DataFrame

Load and validate ticker information from tickers.csv.

Returns:

Validated DataFrame mapping companies to their market symbols

Return type:

pd.DataFrame