• Stars
    star
    721
  • Rank 62,814 (Top 2 %)
  • Language
    MATLAB
  • License
    Other
  • Created over 11 years ago
  • Updated 3 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Highly comparative time-series analysis

〰️ hctsa 〰️: highly comparative time-series analysis

DOI Twitter

hctsa is a Matlab software package for running highly comparative time-series analysis. It extracts thousands of time-series features from a collection of univariate time series and includes a range of tools for visualizing and analyzing the resulting time-series feature matrix, including:

  1. Normalizing and clustering time-series data;
  2. Producing low-dimensional representations of time-series data;
  3. Identifying and interpreting discriminating features between different classes of time series; and
  4. Fitting and evaluating multivariate classification models.

Feel free to email me for advice on applications of hctsa πŸ€“

Installation ⬇️

For users familiar with git (recommended), please make a fork of the repo and then clone it to your local machine. To update, after setting an upstream remote (git remote add upstream git://github.com/benfulcher/hctsa.git) you can use git pull upstream main. To obtain the latest toolboxes (like the optimized catch22 faeture set) you should then run git submodule update --init.

Users unfamiliar with git can instead download the repository by clicking the green "Code" button then "Download ZIP".

Once downloaded, you can install hctsa by running the install.m script (see docs for details).

Documentation and Wiki πŸ“–

Comprehensive documentation for hctsa, from getting started through to more advanced analyses is on GitBook.

There is also alot of additional information on the wiki, including:

  • πŸ‘‰ Information about alternative feature sets (including the much faster catch22), and information about other time-series packages available in R, python, and Julia.
  • 〰️ The accompanying time-series data archive for this project, CompEngine.
  • πŸ’Ύ Downloadable hctsa feature matrices from time-series datasets with example workflows.
  • πŸ’» Resources for distributing an hctsa computation on a computing cluster.
  • πŸ“• A list of publications that have used hctsa to address different research questions.
  • πŸ’ Frequently asked questions about hctsa and related feature-based time-series analyses.

Acknowledgement πŸ‘

If you use this software, please read and cite these open-access articles:

Feedback, as email, GitHub issues or pull requests, is much appreciated.

For commercial use of hctsa, including licensing and consulting, contact Engine Analytics.

Licenses

Internal licenses

There are two licenses applied to the core parts of the repository:

  1. The framework for running hctsa analyses and visualizations is licensed as the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. A license for commercial use is available from Engine Analytics.

  2. Code for computing features from time-series data is licensed as GNU General Public License version 3.

A range of external code packages are provided in the Toolboxes directory of the repository, and each have their own associated license (as outlined below).

External packages and dependencies

Many features in hctsa rely on external packages and Matlab toolboxes. In the case that some of them are unavailable, hctsa can still be used, but only a reduced set of time-series features will be computed.

hctsa uses the following Matlab Add-On Toolboxes: Statistics and Machine Learning, Signal Processing, Curve Fitting, System Identification, Wavelet, and Econometrics.

The following external time-series analysis code packages are provided with the software (in the Toolboxes directory), and are used by our main feature-extraction algorithms to compute meaningful structural features from time series:

Acknowledgements πŸ‘‹

Many thanks go to Romesh Abeysuriya for helping with the mySQL database set-up and install scripts, and Santi Villalba for lots of helpful feedback and advice on the software.

More Repositories

1

hctsa_python

Initial attempt to incorporate some time-series analysis features from hctsa into python land
Python
24
star
2

hctsaTutorial_BonnEEG

hctsa tutorial using the five-class Bonn EEG dataset
23
star
3

TimeSeriesGeneration

Generating time series from a range of dynamical systems
MATLAB
17
star
4

GeneCategoryEnrichmentAnalysis

Toolbox for performing gene set enrichment analysis in Matlab (including ensemble enrichment)
MATLAB
17
star
5

mouseGradients

Code to reproduce analyses of mouse cortical gradients
MATLAB
9
star
6

hctsa_phenotypingFly

MATLAB
6
star
7

hctsaDocumentation

gitbook documentation for hctsa
5
star
8

AllenSDK

Workflow for retrieving spatial gene-expression data from the Allen Institute's Mouse Brain Atlas
MATLAB
5
star
9

CNS2020_hctsaTutorial

CNS 2020 tutorial for hctsa
4
star
10

hctsaAnalysisPython

Code for running python analyses of hctsa data
Python
4
star
11

GCEA_FalsePositives

Analysis of statistical biases in Gene Set Enrichment Analysis applied to transcriptomic atlas data
MATLAB
3
star
12

hctsa_phenotypingWorm

Running hctsa analysis on movement speed data of five strains of worm
MATLAB
3
star
13

Empirical1000_LowDimProj

Low-dimensional projection of diverse empirical time-series data
MATLAB
2
star
14

Matlab_mySQL

Tools for connecting to mySQL databases from Matlab
MATLAB
2
star
15

ResearchResources

Resources for reseachers
Ruby
2
star
16

distributed_hctsa

Running hctsa on a cluster (pbs or slurm)
Shell
2
star
17

mouseStructuralConnectivity

Code for computing interareal axonal connectivity in mouse
MATLAB
1
star
18

hctsa_DREADD

MATLAB
1
star