Skip to content

This project is about designing a Graph Database in Neo4j to store the teams, matches and results of the English Premier League. Data were given in CSV format, were imported and complex quesries were implemented.

Notifications You must be signed in to change notification settings

bourbonbeefcake/Neo4j-Graph-for-EPL-data

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Neo4j Graph database for EPL Data

In this project, matches and teams of the English Premier League was given in a CSV format. Loading the CSV into Neo4j was designed and implemented along with a variety of useful queries.

All queries are heavily commented.

Load the Database on Neo4j Desktop:

  1. On an empty graph of your selection, click "Manage"
  2. Click "Open Folder" on top
  3. Copy and paste the CSV file into the "import" folder
  4. Open the Neo4j Browser
  5. Copy and paste the query from the "csvLoad.cypher" file into the command line and run it
  6. The following numbers should come up as a result of the query

Graph Design

Queries Documentation

  1. Displays how many matches were played in the EPL
  2. Displays details of all matches involved "Manchester United FC".
  3. Displays all the teams that played the EPL matches in the season.
  4. Displays the team with the most "win" in January.
  5. Displays the top five teams that have the best scoring power.
  6. Displays the top five teams that have the worst defending.
  7. Displays top five teams that have the best winning records.
  8. Displays top five teams with best half time result.
  9. Which teams had the most "loss"?
  10. Displays the team with the most consecutive "win".

Graph Model Design

Graph Design

Considering the queries that are requested and the analysis of the CSV, the following design was decided:

The advantage of this design, is that it is straightforward, easily maintainable and easily queried. It would only be needed to add matches if this graph held all the records for every EPL and teams only in case there were new teams in the league.

About

This project is about designing a Graph Database in Neo4j to store the teams, matches and results of the English Premier League. Data were given in CSV format, were imported and complex quesries were implemented.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published