Calculer des ratios financiers avec pandas

Analyser les états financiers en Python

Rohan Chatterjee

Risk Modeler

Structure des données de bilan

  • Données de bilan chargées dans un DataFrame pandas nommé balance_sheet.

 


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

----CODE_GLUE---- ` Une image montrant le début du DataFrame nommé balance_sheet.

Analyser les états financiers en Python

Calculer le ratio de liquidité générale

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

Une image montrant le DataFrame balance_sheet avec la colonne current_ratio ajoutée.

Analyser les états financiers en Python

Utiliser .groupby() pour obtenir des résultats par groupe

  • Pour obtenir le ratio moyen par secteur :
    balance_sheet.groupby("comp_type")["current_ratio"].mean()
    
    Une image montrant le ratio moyen par secteur.
Analyser les états financiers en Python

Utiliser .groupby() pour obtenir des résultats par groupe

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

Une image montrant le ratio moyen par secteur selon les années.

Analyser les états financiers en Python

Utiliser groupby().transform()

  • .transform() peut s'utiliser après .groupby() pour ajouter à chaque ligne le résultat du groupe auquel elle appartient.
    balance_sheet["industry_curr_ratio"] = 
              balance_sheet.groupby([
              "Year","comp_type"])["current_ratio"].transform("mean")
    print(balance_sheet.head())
    

Une image montrant le ratio moyen par secteur et par année, désormais ajouté au DataFrame balance_sheet.

Analyser les états financiers en Python

Utiliser .groupby().transform()

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

Un DataFrame montrant l'écart relatif entre le ratio d'une entreprise et celui de son secteur.

Analyser les états financiers en Python

Utiliser .isin()

  • .isin() sert à filtrer des données pour l'analyse.
  • Exemple : filtrer un DataFrame pour n'afficher que les entreprises fmcg et tech en 2019 et 2020 :
fmcg_2019 = balance_sheet.loc[
            (balance_sheet["Year"].isin([2019,2020])) &
            (balance_sheet["comp_type"].isin(["tech","fmcg"]))
                            ]
Analyser les états financiers en Python

Passons à la pratique !

Analyser les états financiers en Python

Preparing Video For Download...