Skip to content

Releases: mohammadzainabbas/MGMA-Lab

Lab # 2 - Influence Models

27 Jan 01:30
Compare
Choose a tag to compare

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

27 Jan 01:29
Compare
Choose a tag to compare

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.