Neo4j Online Meetup: Desktop Graph Analytics: For The Throne

kudos-5

(Mark Needham) #1

Almost two years ago we released the Neo4j Graph Algorithms library, which made it easy for developers to run algorithms like PageRank, Louvain Modularity, and weighted shortest path, amongst others on their graph data.

In January Irfan and I were chatting, and we thought it'd be cool if we could open up the power of graph algorithms to users that don't want to spend their days writing Cypher code. In this meetup we'll show you a Graph App that we've built called Neuler which aims to solve this problem.

So we've got the App, but what data should we use to show it off...

In April Game of Thrones is back for its 8th and final season, and Professor Andrew Beveridge has made character interaction data available for the 7 seasons that we've had so far.

In this meetup we'll use Neuler to analyse Game of Thrones, and while we might not be able to predict who'll end the show on the throne, we'll show how graph algorithms can help us understand the show without even watching it.

There probably will be spoilers.

#ForTheThrone


(The Graph Giraffe) #2

Thanks for submitting!

I’ve added a tag that allows your blog to be displayed on the community home page!


(Michael Hunger) #3

#ForTheThrone


(The Graph Giraffe) #4

Hi! To find out what I can do, say @greta display help.


(Mark Needham) #5

If you'd like to follow along with today's meetup, the following script will import our dataset:

CREATE CONSTRAINT ON (c:Character)
ASSERT c.id IS UNIQUE;

UNWIND range(1,7) AS season
LOAD CSV WITH HEADERS FROM "https://github.com/mneedham/gameofthrones/raw/master/data/got-s" + season + "-nodes.csv" AS row
MERGE (c:Character {id: row.Id})
ON CREATE SET c.name = row.Label;

UNWIND range(1,7) AS season
LOAD CSV WITH HEADERS FROM "https://github.com/mneedham/gameofthrones/raw/master/data/got-s" + season + "-edges.csv" AS row
MATCH (source:Character {id: row.Source})
MATCH (target:Character {id: row.Target})
CALL apoc.merge.relationship(source, "INTERACTS_SEASON" + season, {}, {}, target) YIELD rel
SET rel.weight = toInteger(row.Weight);

(Michael Hunger) #6

This was an awesome meetup, I can recommend to everyone to check this out!!


(Dhaks R) #7

Thanks for excellent session.

Can you post the installation URL here? Also can we install this on an evaluation copy of Neo4j?


(Briane Samson) #8

http://bit.ly/install-neuler