Giter VIP home page Giter VIP logo

network-analysis-made-simple's Introduction

Binder

Network Analysis Made Simple

Notebook HTML Versions

For tutorial participants who may run into technical issues, full HTML versions of the notebooks are available to follow along during the tutorial.

Getting Set Up

For this tutorial, you will need the following packages:

  1. Python 3
  2. matplotlib
  3. networkx
  4. pandas
  5. hiveplot - conda install -c conda-forge hiveplot or pip install hiveplot.
  6. nxviz - conda install -c conda-forge nxviz. (This implements Circos plots; HivePlots are being migrated over.)
  7. numpy
  8. scipy

Clone the repository

  1. $ cd /path/to/your/directory
  2. Clone the repository to disk:
    1. $ git clone https://github.com/ericmjl/Network-Analysis-Made-Simple.git
  3. $ cd Network-Analysis-Made-Simple

Easiest way: Anaconda Distribution of Python

If you have the Anaconda distribution of Python 3 installed, then run make conda, which wraps the commands below.

  1. $ conda env create -f environment.yml
  2. $ source activate nams
  3. $ python checkenv.py

If you do not have the Anaconda distribution, I would highly recommend getting it for Windows, Mac or Linux. It provides an isolated Python computing environment that will not interfere with your system Python installation, and comes with a very awesome package manager (conda) that makes installation of new packages a single conda install pkgname away.

If you're not using Python 3, then check out @jakevdp's talk at SciPy2015 to find out why!

Alternative to Anaconda: pip install

For those who do not have the capability of installing the Anaconda Python 3 distribution on their computers, please follow the instructions below.

Run make venv, which wraps up the commands below. Special thanks to @matt-land for putting this script together.

  1. Create a virtual environment for this tutorial, so that the installed packages do not mess with your regular Python environment. 2. $ pip install virtualenv 3. $ virtualenv network 4. $ source network/bin/activate
  2. $ pip install matplotlib networkx pandas hiveplot numpy jupyter

Check your environment:

  1. $ python checkenv.py

Run the Jupyter Notebook

$ jupyter notebook

Your browser will open to an index page where you can click on a notebook to run it. Test that everything runs fine by executing all of the cells in the Instructor versions of the notebooks.

Feedback

If you've attended this workshop, please leave feedback! It's important to help me improve the tutorial for future iterations.

Issues

Known Issues

If you get a "Python is not installed as a framework" error with matplotlib, please check out this issue for instructions to resolve it.

New Issues

If you're facing difficulties, please report it as an issue on this repository.

Credits

  1. Divvy Data Challenge
  2. Konect Network Analysis Datasets

Resources

  1. Jon Charest's use of Circos plots to visualize networks of Metal music genres. blog post | notebook
  2. Gain further practice by taking this course online at DataCamp!
  3. A gentle introduction to graph theory on Vaidehi Joshi's website

network-analysis-made-simple's People

Contributors

achabotl avatar bachmann1234 avatar ericmjl avatar imgbotapp avatar remik avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.