Frbmclust - Clusterize FRB profiles using hierarchical clustering, plot corresponding parameters distributions

Overview

frbmclust

Getting Started

Clusterize FRB profiles using hierarchical clustering, plot corresponding parameters distributions. Input files (waterfall data, CHIME catalog) are stored in the resources/ directory, output files are stored in the plots/ directory.

Data used in the clustering belongs to the CHIME/FRB collaboration, CHIME/FRB Catalog 1 Paper.

Prerequisites

  • Python 3.7+

  • The vos Python module for downloading waterfall data: CANFAR storage system

    • pip install vos --upgrade --user
  • Python code related to DM calculations, estimations, and analysis: FRB

    • For FRB dependencies see: Installing FRB

      git clone https://github.com/FRBs/FRB.git
      cd FRB ; python setup.py install --user ; cd ..
      
      git clone https://github.com/FRBs/ne2001.git
      cd ne2001 ; python setup.py install --user ; cd ..
      
  • astropy v4.3+

    pip install --upgrade pip 
    pip install astropy
    
  • Installation/upgrade of side packages, which might be required for the version compatibility

    • pip install --user --upgrade lxml pandas ipython scipy matplotlib seaborn h5py
  • cosmocalc

    We download cosmocalc v0.1.2 and refactor it to be able to run under Python 3 (2to3 software is used and should be installed via package manager):

    curl https://files.pythonhosted.org/packages/ca/61/df95b65cd3cf3abdffcbeea6c77a6d8964a8fb625a88eccd9c73d2bfdbf0/cosmocalc-0.1.2.tar.gz | tar -x
    cd cosmocalc-0.1.2 ; 2to3 -w cosmocalc.py ; python setup.py install --user ; cd ..
    

Configuration

For the fast reproduction of the main results one can run python frb_profiles_clustering.py --use-preprocessed --use-precalculated-z.

Instead of preprocessed signal data, waterfall data can also be used, which is located in CANFAR storage and which can be downloaded with the -d flag. For the data to be used, it shoud be in the resources/ folder and have a following name: {frb_name}_waterfall.h5

To obtain preprocessed signals, run python repack_waterfall.py. It would download waterfall data from CANFAR storage one at a time and save only calibrated profiles – mean of calibrated waterfall data over each frequency channel.

When calling python frb_profiles_clustering.py several flags are available:

  • -d, --download: download waterfall data from CANFAR storage
  • -ef, --emission_freq: set emission frequency (MHz) used in brightness temperature calculations. Default value is 600 MHz
  • --use-preprocessed: use preprocessed signal profiles
  • --use-precalculated-z: use precalculated red-shift values
  • --use-latex: enable LaTeX support for plots
cqMore is a CadQuery plugin based on CadQuery 2.1.

cqMore (under construction) cqMore is a CadQuery plugin based on CadQuery 2.1. Installation Please use conda to install CadQuery and its dependencies

Justin Lin 36 Dec 21, 2022
Investment and risk technologies maintained by Fortitudo Technologies.

Fortitudo Technologies Open Source This package allows you to freely explore open-source implementations of some of our fundamental technologies under

Fortitudo Technologies 11 Dec 14, 2022
HW 02 for CS40 - matplotlib practice

HW 02 for CS40 - matplotlib practice project instructions https://github.com/mikeizbicki/cmc-csci040/tree/2021fall/hw_02 Drake Lyric Analysis Bar Char

13 Oct 27, 2021
Python Package for CanvasXpress JS Visualization Tools

CanvasXpress Python Library About CanvasXpress for Python CanvasXpress was developed as the core visualization component for bioinformatics and system

Dr. Todd C. Brett 5 Nov 07, 2022
view cool stats related to your discord account.

DiscoStats cool statistics generated using your discord data. How? DiscoStats is not a service that breaks the Discord Terms of Service or Community G

ibrahim hisham 5 Jun 02, 2022
The plottify package is makes matplotlib plots more legible

plottify The plottify package is makes matplotlib plots more legible. It's a thin wrapper around matplotlib that automatically adjusts font sizes, sca

Andy Jones 97 Nov 04, 2022
Compute and visualise incidence (reworking of the original incidence package)

incidence2 incidence2 is an R package that implements functions and classes to compute, handle and visualise incidence from linelist data. It refocuss

15 Nov 22, 2022
Eulera Dashboard is an easy and intuitive way to get a quick feel of what’s happening on the world’s market.

an easy and intuitive way to get a quick feel of what’s happening on the world’s market ! Eulera dashboard is a tool allows you to monitor historical

Salah Eddine LABIAD 4 Nov 25, 2022
Script to create an animated data visualisation for categorical timeseries data - GIF choropleth map with annotations.

choropleth_ldn Simple script to create a chloropleth map of London with categorical timeseries data. The script in main.py creates a gif of the most f

1 Oct 07, 2021
Learning Convolutional Neural Networks with Interactive Visualization.

CNN Explainer An interactive visualization system designed to help non-experts learn about Convolutional Neural Networks (CNNs) For more information,

Polo Club of Data Science 6.3k Jan 01, 2023
This plugin plots the time you spent on a tag as a histogram.

This plugin plots the time you spent on a tag as a histogram.

Tom Dörr 7 Sep 09, 2022
Python+Numpy+OpenGL: fast, scalable and beautiful scientific visualization

Python+Numpy+OpenGL: fast, scalable and beautiful scientific visualization

Glumpy 1.1k Jan 05, 2023
:bowtie: Create a dashboard with python!

Installation | Documentation | Gitter Chat | Google Group Bowtie Introduction Bowtie is a library for writing dashboards in Python. No need to know we

Jacques Kvam 753 Dec 22, 2022
Quickly and accurately render even the largest data.

Turn even the largest data into images, accurately Build Status Coverage Latest dev release Latest release Docs Support What is it? Datashader is a da

HoloViz 2.9k Dec 28, 2022
Jupyter notebook and datasets from the pandas Q&A video series

Python pandas Q&A video series Read about the series, and view all of the videos on one page: Easier data analysis in Python with pandas. Jupyter Note

Kevin Markham 2k Jan 05, 2023
Peloton Stats to Google Sheets with Data Visualization through Seaborn and Plotly

Peloton Stats to Google Sheets with Data Visualization through Seaborn and Plotly Problem: 2 peloton users were looking for a way to track their metri

9 Jul 22, 2022
Mathematical learnings with Lean, for those of us who wish we knew more of both!

Lean for the Inept Mathematician This repository contains source files for a number of articles or posts aimed at explaining bite-sized mathematical c

Julian Berman 8 Feb 14, 2022
A high performance implementation of HDBSCAN clustering. http://hdbscan.readthedocs.io/en/latest/

HDBSCAN Now a part of scikit-learn-contrib HDBSCAN - Hierarchical Density-Based Spatial Clustering of Applications with Noise. Performs DBSCAN over va

Leland McInnes 91 Dec 29, 2022
Regress.me is an easy to use data visualization tool powered by Dash/Plotly.

Regress.me Regress.me is an easy to use data visualization tool powered by Dash/Plotly. Regress.me.-.Google.Chrome.2022-05-10.15-58-59.mp4 Get Started

Amar 14 Aug 14, 2022
An easy to use burndown chart generator for GitHub Project Boards.

Burndown Chart for GitHub Projects An easy to use burndown chart generator for GitHub Project Boards. Table of Contents Features Installation Assumpti

Joseph Hale 15 Dec 28, 2022