Обчислення фінансових коефіцієнтів у pandas

Аналіз фінансової звітності в Python

Rohan Chatterjee

Risk Modeler

Структура даних балансу

  • Дані балансу завантажено в датафрейм pandas під назвою balance_sheet.

 


----CODE_GLUE----
```print(balance_sheet.head())

----CODE_GLUE---- ` Знімок верхніх рядків датафрейму balance_sheet.

Аналіз фінансової звітності в Python

Обчислення current ratio

balance_sheet["current_ratio"] = balance_sheet["Total Current Assets"] / 
                                 balance_sheet["Total Current Liabilities"]
print(balance_sheet.head())

Знімок датафрейму balance_sheet із доданим стовпцем current_ratio.

Аналіз фінансової звітності в Python

Використання .groupby() для результатів за групами

  • Щоб отримати середній current ratio за галузями:
    balance_sheet.groupby("comp_type")["current_ratio"].mean()
    
    Середнє значення current ratio у різних галузях.
Аналіз фінансової звітності в Python

Використання .groupby() для результатів за групами

balance_sheet.groupby(["Year","comp_type"])["current_ratio"].mean()

Середній current ratio по галузях у різні роки.

Аналіз фінансової звітності в Python

Використання groupby().transform()

  • .transform() можна застосувати після .groupby(), щоб додати результат до кожного рядка згідно з групою, до якої він належить.
    balance_sheet["industry_curr_ratio"] = 
              balance_sheet.groupby([
              "Year","comp_type"])["current_ratio"].transform("mean")
    print(balance_sheet.head())
    

Середній current ratio по галузях у різні роки, доданий до датафрейму balance_sheet.

Аналіз фінансової звітності в Python

Використання .groupby().transform()

balance_sheet["relative_diff"] = 
                            (balance_sheet["current_ratio"] / 
                             balance_sheet["industry_curr_ratio"]) - 1

Датафрейм із відносною різницею між current ratio компанії та галузевим current ratio.

Аналіз фінансової звітності в Python

Використання .isin()

  • .isin() використовують для вибірки даних для аналізу.
  • Приклад: відфільтрувати датафрейм, щоб показати компанії fmcg і tech за 2019 і 2020 роки:
fmcg_2019 = balance_sheet.loc[
            (balance_sheet["Year"].isin([2019,2020])) &
            (balance_sheet["comp_type"].isin(["tech","fmcg"]))
                            ]
Аналіз фінансової звітності в Python

Давайте потренуємось!

Аналіз фінансової звітності в Python

Preparing Video For Download...