Releases: mohammadzainabbas/MGMA-Lab
Lab # 2 - Influence Models
Lab 02 - Influence Models π¨π»βπ»
Table of contents
1. Introduction
Data drives the world.
Nowadays, most of the data (structured or unstructured) can be analysed as a graph. Today, many practical computing problems concern large graphs. Standard examples include the Web graph and various social networks. The scale of these graphs (in some cases billions of vertices, trillions of edges) poses challenges to their efficient processing.
In this lab, we will focus on some basic graph algorithms and see how we can utilise these algorithms to efficiently analyse our data. Since, there exist many similarities between graph theory and network science, you will see us using network science related packages as well.
1.1. Influence Models
NetworkX is a Python package for the creation, manipulation, and study of the structure, dynamics, and functions of complex networks.
2. Dataset
For the purpose of this lab, we will use graph datasets. Instead of creating our own graphs (you are more then welcome if you have your own graph datasets), we will use some already existing datasets.
2.1. SNAP for Python
Snap.py is a Python interface for SNAP. SNAP is a general purpose, high performance system for analysis and manipulation of large networks. SNAP is written in C++ and optimized for maximum performance and compact graph representation. It easily scales to massive networks with hundreds of millions of nodes, and billions of edges.
SNAP also provides some graph datasets which we will use in this lab. List of available datasets can be found here.
2.2. WormNet v3
WormNet provides a genes data in the form of a network. It's basically a network-assisted hypothesis-generating server for Caenorhabditis elegans
. List of available datasets can be found here.
WormNet is part of YONSEI Network Biology Lab. You can check out other available software/data here.
3. Setup
If you want to follow along, make sure to clone and cd
to this lab's directory:
git clone https://github.com/mohammadzainabbas/MGMA-Lab.git
cd MGMA-Lab/src/lab1
3.1. Create new enviornment
Before starting, you may have to create new enviornment for the lab. Kindly, checkout the documentation for creating an new environment.
Once, you have activated your new enviornment, we will install all the dependencies of this project:
pip install -r requirements.txt
3.2. Setup pre-commit
hooks
In order to setup pre-commit
hooks, please refer to the documentation.
Lab # 1 - NetworkX
Lab 01 - NetworkX π¨π»βπ»
Table of contents
1. Introduction
Data drives the world.
Nowadays, most of the data (structured or unstructured) can be analysed as a graph. Today, many practical computing problems concern large graphs. Standard examples include the Web graph and various social networks. The scale of these graphs (in some cases billions of vertices, trillions of edges) poses challenges to their efficient processing.
In this lab, we will focus on some basic graph algorithms and see how we can utilise these algorithms to efficiently analyse our data. Since, there exist many similarities between graph theory and network science, you will see us using network science related packages as well.
1.1. NetworkX
NetworkX is a Python package for the creation, manipulation, and study of the structure, dynamics, and functions of complex networks.
2. Dataset
For the purpose of this lab, we will use graph datasets. Instead of creating our own graphs (you are more then welcome if you have your own graph datasets), we will use some already existing datasets.
2.1. SNAP for Python
Snap.py is a Python interface for SNAP. SNAP is a general purpose, high performance system for analysis and manipulation of large networks. SNAP is written in C++ and optimized for maximum performance and compact graph representation. It easily scales to massive networks with hundreds of millions of nodes, and billions of edges.
SNAP also provides some graph datasets which we will use in this lab. List of available datasets can be found here.
2.2. WormNet v3
WormNet provides a genes data in the form of a network. It's basically a network-assisted hypothesis-generating server for Caenorhabditis elegans
. List of available datasets can be found here.
WormNet is part of YONSEI Network Biology Lab. You can check out other available software/data here.
3. Setup
If you want to follow along, make sure to clone and cd
to this lab's directory:
git clone https://github.com/mohammadzainabbas/MGMA-Lab.git
cd MGMA-Lab/src/lab1
3.1. Create new enviornment
Before starting, you may have to create new enviornment for the lab. Kindly, checkout the documentation for creating an new environment.
Once, you have activated your new enviornment, we will install all the dependencies of this project:
pip install -r requirements.txt
3.2. Setup pre-commit
hooks
In order to setup pre-commit
hooks, please refer to the documentation.