Coder Social home page Coder Social logo

trendscenter / coinstac-mancova Goto Github PK

View Code? Open in Web Editor NEW
0.0 5.0 0.0 427.09 MB

MANCOVA analysis of covariates following backreconstruction

Dockerfile 0.10% Python 3.66% MATLAB 80.44% Shell 0.04% M 1.74% HTML 3.11% CSS 0.02% C 10.04% Makefile 0.17% C++ 0.38% Fortran 0.29% Java 0.02%

coinstac-mancova's Introduction

Coinstac Group ICA/dMANCOVA

This repository compiles submodules utilized for Group ICA and MANCOVA

The dMANCOVA pipeline consists of two distinct parts - Group or Spatially Constrained ICA first, followed by dMANCOVA.

Running in the Simulator

This pipeline has been tested with version 5.1.0 of the COINSTAC simulator

Install the simulator:

npm i -g coinstac-simulator

Download this repository

git clone https://github.com/trendscenter/coinstac-mancova.git

Initialize submodules

git submodule update --init --recursive

Copy the mask and template into the local input folders, using the bash script

bash copy_data.sh

or the following commands

mkdir -p test/input/remote/simulatorRun ;
cp local_data/* test/input/remote/simulatorRun
cp local_data/* test/input/local0/simulatorRun
cp local_data/* test/input/local1/simulatorRun

Copy your NIfTI files and corresponding cavariates CSV files into the test site folders. The covariates.csv file should only have data for the NIfTI files in the corresponding site. Below is an example covariates.csv file.

age diagnosis filename
25.0 1.0 vsdwa_000123.nii.gz
42.0 0.0 vsdwa_000456.nii.gz

After those steps, the test folder should look similar to this (probably with different .nii.gz files).

test
├── input
│   ├── local0
│   │   └── simulatorRun
│   │       ├── NeuroMark.nii
│   │       ├── covariate_keys.csv
│   │       ├── covariates.csv
│   │       ├── mask.nii
│   │       ├── vsdwa_000123.nii.gz
│   │       ├── vsdwa_000456.nii.gz
│   ├── local1
│   │   └── simulatorRun
│   │       ├── NeuroMark.nii
│   │       ├── covariate_keys.csv
│   │       ├── covariates.csv
│   │       ├── mask.nii
│   │       ├── vsdwa_000789.nii.gz
│   │       ├── vsdwa_000800.nii.gz
│   └── remote
│       └── simulatorRun
│           ├── NeuroMark.nii
│           └── mask.nii
└── inputspec.json

Finally, run using the bash script (will require sudo unless your user is in the docker group)

bash run.sh

or

Run using the following commands

docker build  -t dmancova .
coinstac-simulator --silly

Spatially Constrained ICA

The stages of Spatially Constrained ICA are

  • local spatially constrained ICA (performed with GIFT)

Group ICA

The stages of Group ICA are:

  • decentralized row means
  • decentralized PCA
  • local ICA (either with Infomax ICA, spatially-constrained ICA, or other)

ddFNC

The stages of dMANCOVA are:

  • ...

coinstac-mancova's People

Contributors

sunithabasodi avatar bbradt avatar everner avatar pixelsaurus avatar rssk avatar

Watchers

 avatar James Cloos avatar  avatar  avatar  avatar

coinstac-mancova's Issues

Does not work for different filenames

Currently, the code doesn't work unless the CSV files are named covariates.csv and covariate_keys.csv. The answer might be to separate the CSV files into different variables on the UI. You can see in the code below that the CSV files seem to depend on order within a list, and I'm not sure how that order is established.

covariate_file = os.path.join(state["baseDirectory"], csv_filename[0])

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.