Practice inspecting, cleaning, calculating, visualizing and verifying realistic synthetic ESG data, and turn a data question into a trustworthy analysis.
Info
DS 101 practice data are synthetic educational examples. All company names and values are illustrative and do not represent the ESG performance of any real organization. The metric definitions are simplified for learning and are not a substitute for official ESG accounting or reporting guidance.
Warning
Practice with the synthetic course files. Do not paste confidential institutional or company data, personal data or sensitive data into an AI tool without authorization, and check your organization’s policy before using real ESG or internal operational data.
Practice flow
1. Download
Download the dataset, the data dictionary and the starter notebook into one folder.
2. Understand
Read the analysis question and the data dictionary first: what does one row represent, and what is the unit of each number?
3. Inspect
Check the schema, data types, missing values, duplicates and units before you calculate anything.
4. Analyze
Transform, calculate, group and visualize, checking the input, the action and the output of every step.
5. Verify
Check formulas, row counts and units by hand, and recalculate at least one result yourself.
6. Communicate
Write Fact, Analysis and Unknown separately, and record the limitations.
Download the practice files
Clean ESG dataset
DS101_ESG_Company_Data_Clean.csv
Four illustrative companies, 2020 to 2025, 24 rows. Used in the Guided Lab.
Practice A: Guided Lab, your first ESG data analysis
Analysis question: from 2021 to 2025, how did Scope 1 + 2 emissions and emissions intensity change across the four sample companies, and which observations require further verification?
Create scope12_intensity = scope12_tco2e / revenue_m_twd (unit: tCO2e per NT$ million revenue).
Filter the years 2021 to 2025.
Pick one year and sort by intensity.
Group by company while keeping the year dimension, and compare the yearly values.
Record three observations.
Label each observation: fact from data, interpretation, or needs verification.
Write one limitation statement.
What you produce
A runnable notebook
Two derived columns
At least three evidence statements
At least one limitation
No causal claim the dataset cannot support
Practice B: Data Quality Challenge
The practice data contain deliberate data-quality problems. Inspect first, then decide how to handle each one. Cleaning is not about making data look tidy; every change must be explainable and traceable.
Files used: Practice ESG dataset, Data dictionary (English), Independent Lab starter notebook
Steps
Load DS101_ESG_Company_Data_Practice.csv and look at the shape, dtypes and first rows.
Use df.isna().sum() to find missing values, and decide what a missing value means.
Use df.duplicated().sum() to check for duplicates, and use company_id and year to confirm whether a row is really repeated.
Check whether numeric columns were read as text, and whether percentage columns go outside 0 to 100.
Compare each company with its own neighbouring years to find outliers worth investigating.
Check that text columns such as the company name are consistent (for example, stray spaces).
For every problem you find, record six fields in the cleaning decision log: Issue, Evidence, Impact (what happens if it is left untreated), Treatment decision, Justification (why that treatment is reasonable), and What must remain unknown (what has to stay unknown or unchanged).
What you produce
Find at least: missing values, duplicates, a type issue, a range issue, a suspicious outlier and a naming inconsistency
A cleaning decision log where every problem has all six fields: Issue / Evidence / Impact / Treatment decision / Justification / What must remain unknown
Not just "how I cleaned it": the Impact and What-must-remain-unknown fields cannot be skipped
No missing value filled with 0, and no outlier deleted, without a documented reason
Info
This page does not tell you how many problems there are and does not publish an answer key. Bring the problems you found and your reasoning to the class discussion.
Practice C: Independent Lab, integrating trustworthy analysis
Identify one ESG trend or anomaly worth reporting. Complete the necessary data-quality checks, cleaning, metric calculation, visualization and verification, while clearly separating evidence, interpretation and unknowns.
Files used: Practice ESG dataset, Data dictionary (English), Independent Lab starter notebook
Steps
1. Question: write your analysis question in one sentence.
2. Data source: list the files you use and where they come from.
3. Grain: state what one row represents (e.g. "one company in one year").
4. Units: list the unit of every numeric column you use.
5. Cleaning decisions: run the data-quality checks, and for each problem found make a cleaning decision with a reason.
6. Analysis method: describe the method and steps you used.
7. Derived metrics: write the formula(s) you use and calculate the metric(s).
8. Visualization: create at least one chart with labelled axes and units.
9. Verification checks: verify at least one numeric result by hand, and record what checks you ran.
10. AI assistance record: if you used AI, state what it assisted with and what you verified yourself.
11. Human review: state what review you (or a peer/teacher) did on this analysis, and what it confirmed.
12. Limitations: write three evidence statements, one interpretation and at least two limitations or unknowns.
13. Reproduction instructions: write what someone else would need to reproduce your analysis from these steps.
What you produce
1. Question
2. Data source
3. Grain
4. Units
5. Cleaning decisions (with reasons)
6. Analysis method
7. Derived metrics (formula(s) used)
8. Visualization (at least one chart, with labelled axes and units)
9. Verification checks (including one manually verified numeric result)
10. AI assistance record (if AI was used)
11. Human review
12. Limitations (three evidence statements, one interpretation, at least two limitations or unknowns)
13. Reproduction instructions
Info
Complete: all 13 elements are present and the claims are consistent with the evidence. Needs revision: the code runs, but units, formulas or data-quality decisions are undocumented, or the claims go beyond what the data support.
The done mark is stored in this browser only (and synced once you join a cohort). Keep your work in your own notebook.
Sync my progressJoin a session to keep progress across devices and share it with your instructor