jingjieyeo / esg-nlp

Analysing ESG report using Natural Language Processing

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Analysing ESG report using Natural Language Processing

Updated by Jingjie Yeo to work on Anaconda Python 3.7 with MacOS Catalina

Summary

Environment, Social and Corporate Governance (ESG) refers to the three central factors in measuring the sustainability and societal impact of an investment in a company or business. These criteria help to better determine the future financial performance of companies (return and risk).

This analysis extracts text from an ESG report in PDF format from the internet, performs NLP on the information, summarizes the key ESG initiatives with Word Clouds and TFIDFs, and discovers topics by building a Latent Dirichlet Allocation (LDA) model.

To keep this exercise as simple as possible, only one ESG report is being used. Specifically the Citibank's 2019 ESG report.

An additional notebook is provided for analyzing sustainability reports by Cabot Corp.

Given that ESG is a broad topic, different companies focus on different aspects of ESG depending on their business operations and culture. One can potentially ingest more ESG reports from different companies across all sectors and industries to capture relevant ESG topics. This to be attempted in another analysis.

Notebook

  1. https://github.com/jingjieyeo/esg-nlp/blob/master/notebook/esg-report-analysis.ipynb
  2. https://github.com/jingjieyeo/esg-nlp/blob/master/notebook/cabot-sustainability-report-analysis.ipynb

Reference

  1. A data-driven approach to Environmental, Social and Governance
  2. Higher ESG ratings are generally positively correlated with valuation and profitability while negatively correlated with volatility.
  3. Topic Modeling with Gensim (Python)
  4. Citibank's 2019 ESG report
  5. Databricks - ESG Reports
  6. Databricks - Data Driven ESG Score
  7. Databricks - ESG Market Risk
  8. Topic Modeling and Latent Dirichlet Allocation (LDA) in Python
  9. Evaluate Topic Models: Latent Dirichlet Allocation (LDA)
  10. Topic modeling visualization – How to present the results of LDA models?

About

Analysing ESG report using Natural Language Processing


Languages

Language:Jupyter Notebook 99.0%Language:Python 1.0%