Member-only story

Instagram Landscapes: Building Network Graphs with Neo4J in Python

modeling connected communities

Mark Cleverley
6 min readJul 6, 2020

Social media is powerful not only because it preys on our simian instinctual drive towards shiny things, but because it creates connections. The content you create, share or comment on creates a ‘profile’ of how you express yourself online. It’s a beautiful phenomenon that enables communities to organically appear & grow and puts users in control of the content they care about.

I’m kidding. Companies use these profiles to advertise to you even harder.
Judgments aside, all the more reason to understand what’s going on under the surface.

Last time we explored some Instagram data and determined that follower count doesn’t really lead to higher user engagement.
I briefly mentioned network graphs — a bunch of Node objects connected by Relationships (or Edges) — and how they can model an interconnected social media environment.

I have since been overcome by the pervasive urge to graph, so let’s boot up Neo4J.

Nodes of Creation

There’s 2 easy ways I’ve found to jump into graphing:

  1. NetworkX
  2. Neo4J & Py2Neo

--

--

Mark Cleverley
Mark Cleverley

Written by Mark Cleverley

data scientist, machine learning engineer. passionate about ecology, biotech and AI. https://www.linkedin.com/in/mark-s-cleverley/

No responses yet