National Dish Project

Embark on an exciting voyage through the Data analysis workflow with 200+ diverse national cuisines.

Tagine-Morocco

About The National Dish Project

The project aims to promote a better grasp of the data analysis workflow across a wide audience by utilizing a tailored dataset that includes 200+ classic dishes from different countries.

amok-trey ema-datshi Wiener-Schnitzel jollof-rice asado kokoda la-bandeja-paisa

Click an image to learn more about the Dish!

Project Goals

  1. Ensure that 90% of the project's audience easily understands two-thirds of the workflow.
  2. Leave the audience curious and inspired to explore the stories, ingredients, and cultural significance behind national dishes.
  3. Harness data to fuel debates on the age-old dispute regarding the life-span of white meat versus red meat consumers.
Cogs ontop of a dinner plate

National Dish Project
The Project
Process
A quick summary of all the steps.

Waterfall on a plate

National Dish Project
Waterfall
Workflow
The project followed a step-by-step approach where each step's success influenced the next one. Occasionally, updates were made to enhance the project's quality.

Project Methodology

National Dish Project
Objectives
Defining what success meant was a crucial step in the project. It was essential to identify the tasks at hand and their significance. The ultimate goal was to explain the entire data analysis workflow in a way that would resonate with a non-technical audience.

Bullseye on a plate
Basket on a plate

National Dish Project
Data
Collection
The data compiled was closely aligned with the objectives. It featured the national dishes from 200+ countries, the ingredients involved, and human lifespan details. A large part of this information was sourced through web scraping.

National Dish Project
Data
Cleaning
The gathered data was flawed and could greatly affect the results' accuracy. Issues included spelling mistakes and inconsistent values. Python was our tool of choice for the cleaning process.

Tap pouring water ontop of a soapy sponge
file cabinet on dinner plate

National Dish Project
Data
Modelling
The data resided in several tables, and it was important to link them to carry out the analysis. MySQL Workbench was used to create the relationship diagram and develop the database.

National Dish Project
Data
Visualization

Achieving clarity meant that the results had to be shown in a way that was simple to grasp, making visuals a necessity. Tableau was the chosen tool for generating these informative visuals.

Data charts on the plate
National Dish Project
Summary
  • Set clear Expectations
  • Collect Data
  • Clean Data
  • Model & Query Data
  • Visualize findings
Scuba diver with fish

National Dish Project
Thank
You !
Explore the project further
for a deep dive

Plant Image
Top Vintage Border

National Dish Analysis Report

Bottom Vintage Border
Water Glasses
World Map made of salmon and steak
1/36

SQL QUERIES

Steak in the shape of Africa
Top Ingredient by Continent
Ingredients
Top 7 Ingredients
Grandma with Child and hourglass infront
Human Life Expectancy (Red Meat vs White Meat)

Data Collection

excel icon

Web Scraping Using Excel

For data already structured in tables on the web such as the Country_region data, the following formula was used:

=IMPORTHTML("Website URL","table", table_number_on_webpage)

python icon

Web Scraping Using Python

The Beautiful Soup library was used to retrieve data from websites.

Click the button below to view the code in the Jupyter notebook

nothing Fancy

Nothing fancy

The retrieval of certain data relied on the tried-and-true method of 'Copy and Paste'. This was particularly true for the main ingredients of various national dishes, as their recipe variations demanded manual entry and human judgment.

Control V and C

Data Cleaning

Data Modelling

data model
one-to-many-relationship

Relationship and Cardinality Explanation

This model was designed to meet industry standards, making it easier to query and update.

Relationship 1: Country_region to Life_expectancy

1 : 0..1 - one-to-zero or one relationship

relationship 1

Countries listed in the Country_region table may have either one or no life expectancies assigned to them. On the other hand, each country in the Life_expectancy table is associated with exactly one region.


Primary and foreign Key

In the Life_expectancy table, the Country_ID column acts as both the primary key and a foreign key that links to the Country_region table.

Relationship 2: Country_region, country_national_dish, Dishes

relationship 2

The Country_national_dish table functions as a bridge linking the Country_region and Dishes tables. It's worth mentioning that not every country in the Country_region table has a dish linked to it, and for those that do, only one dish is assigned as per the project scope. Interestingly, some dishes are celebrated as national dishes across various countries.


Composite Key

In the Country_national_dish table, the Dishes_ID and Country_ID columns served as foreign keys, and their unique pairing was set as the primary key.

Relationship 3: Dishes, main_contents, ingredients

relationship 3

Similar to the previously mentioned relationship, the Main_Contents table acted as the connecting table. Each dish could contain multiple ingredients, and each ingredient could be part of several dishes.


Using MySQL Workbench:

  • Designed an Entity relationship diagram (ERD). ERD
  • With a click of a button, generated a schema creation script using forward engineering. Script
  • Built the database by populating it with the CSV files. DB Build

Rotary dial with a cup of coffee

CONTACT ME