{ "cells": [ { "cell_type": "code", "execution_count": 4, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Adding library niak to the search path.\n", "\n", "Adding library psom to the search path.\n", "\n" ] } ], "source": [ "cd\n", "build_path niak psom\n", "cd /home/pbellec/git/niak_tutorials/glm_connectome" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# GLM connectome pipeline - model visualization\n", "This tutorial shows how to visualize the models used in the NIAK GLM connectome pipeline. Download the tutorial as a notebook [here](https://raw.githubusercontent.com/SIMEXP/niak_tutorials/master/glm_connectome/niak_tutorial_glm_connectome_visu_model.ipynb) and a matlab script [here](https://raw.githubusercontent.com/SIMEXP/niak_tutorials/master/connectome/niak_tutorial_glm_connectome_visu_model.m). To run this tutorial, we recommend to use [jupyter](http://jupyter.org/) from a niak docker container, as described in the [NIAK installation page](http://niak.simexp-lab.org/niak_installation.html). " ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "We will illustrate the model construction and visualization on the COBRE data. We will first download it. " ] }, { "cell_type": "code", "execution_count": 5, "metadata": { "collapsed": false }, "outputs": [], "source": [ "clear\n", "path_data = [pwd filesep];\n", "[status,msg,data_fmri] = niak_wget('cobre_lightweight20_nii');" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Group model\n", "### Creating a spreadsheet" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "You can create your model using any spreadsheet software (e.g. Excel, Google spreadsheet, etc) or even a text editor. The spreadsheet will look like:\n", "```\n", " , age , patient , fd\n", "40061 , 18 , 0 , 0.22657 \n", "40117 , 19 , 1 , 0.18410 \n", "40145 , 19 , 1 , 0.15521\n", "```\n", "The first line defines labels for the explanatory variables. Here we have three variables: `age` is self-explanatory, `patient` is a binary variable coding for the diagnostic status, and `fd` is an overall measure of motion during the fMRI scan, called frame displacement.\n", "\n", "The first column corresponds to subject labels. Those can be numbers or strings, but they need to be identical to the labels used in the GLM connectome pipeline. In the case you are \"grabbing\" data generated by the NIAK fMRI preprocessing pipeline, the labels need to be consistent with the ones used in the fMRI preprocessing pipeline. **Note** the first cell (i.e first row and column) need to be left empty. \n", "\n", "Finally all other values are numerical. For example, for the `patient` variable, 1 codes for a patient with schizophrenia, and 0 for a healthy control. You do not need to have a variable for the intercept, or to demean variables. You also do not need to create interaction variables, or to create a separate model for different subgroup of subjects. All these operations will be done when describing a particular \"contrast\" in the GLM connectome pipeline. " ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Building a model from an existing spreadsheet \n", "You can build a group model from an existing spreadsheet using NIAK. We will start from `.csv` phenotypic variable available in the COBRE sample. " ] }, { "cell_type": "code", "execution_count": 13, "metadata": { "collapsed": false }, "outputs": [], "source": [ "path_cobre = [pwd filesep 'cobre_lightweight20'];\n", "file_pheno = [path_cobre filesep 'phenotypic_data.tsv.gz'];\n", "tab = niak_read_csv_cell(file_pheno);" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": true }, "outputs": [], "source": [ "list_subject = tab(2:end,1);\n", "list_var = { 'age' , 'patient' , 'fd' };" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Now we convert the values into a series of numerical covariates:" ] }, { "cell_type": "code", "execution_count": 14, "metadata": { "collapsed": true }, "outputs": [], "source": [ "patient = strcmp(tab(2:end,5),'Patient');\n", "age = str2double(tab(2:end,2)); \n", "FD = str2double(tab(2:end,9));" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "We save the model in a separate .csv file:" ] }, { "cell_type": "code", "execution_count": 20, "metadata": { "collapsed": true }, "outputs": [], "source": [ "file_model_group = [pwd filesep 'model_patient.csv']; % The file name for the .csv group model\n", "opt_csv.labels_x = list_subject; % Labels for the rows\n", "opt_csv.labels_y = list_var; % Labels for the columns\n", "niak_write_csv('model_patient.csv', [age patient FD] , opt_csv);" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Visualization of the group model" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ " and make sure it can be loaded properly with NIAK. The model is loaded in three variables:" ] }, { "cell_type": "code", "execution_count": 16, "metadata": { "collapsed": true }, "outputs": [], "source": [ "[X_group,list_subject,list_var] = niak_read_csv(files_in.model.group);" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The `list_subject` and `list_var` are cell of strings that describe the subject (row) labels, and explanatory variables (column) labels, respectively: " ] }, { "cell_type": "code", "execution_count": 18, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "ans = \n", "{\n", " [1,1] = 40061\n", " [2,1] = 40117\n", " [3,1] = 40145\n", "}\n", "list_var = \n", "{\n", " [1,1] = age\n", " [2,1] = patient\n", " [3,1] = fd\n", "}\n", "ans =\n", "\n", " 18.00000 0.00000 0.22657\n", " 19.00000 1.00000 0.18410\n", " 19.00000 1.00000 0.15521\n", "\n" ] } ], "source": [ "list_subject(1:3)\n", "list_var\n", "X_group(1:3,:)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Here we have three variables: `age` is self-explanatory, `patient` is a binary variable coding for the diagnostic status (0 for controls, 1 for patients), and `fd` is an overall measure of motion during the fMRI scan, called frame displacement. Because the variables have very different ranges, we will normalize each variable to a zero mean and unit variance. We can visualize the data associated with the three variables as follows:" ] }, { "cell_type": "code", "execution_count": 21, "metadata": { "collapsed": false }, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "figure\n", "% Normalize data\n", "X_group_n = niak_normalize_tseries(X_group);\n", "% That is making the figure\n", "imagesc(X_group_n)\n", "% Set title for figure and axes\n", "title('Explanatory variables')\n", "xlabel('Variable')\n", "ylabel('Subject')\n", "% Set subject and variable labels on each axis\n", "ha = gca;\n", "set(ha,'xtick',1:length(list_var))\n", "set(ha,'ytick',1:length(list_subject))\n", "set(ha,'xticklabel',list_var)\n", "set(ha,'yticklabel',list_subject)\n", "% Add a colorbar and a gray colormap\n", "colormap gray\n", "colorbar" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ " We can compute the correlation between our three explanatory variables:" ] }, { "cell_type": "code", "execution_count": 26, "metadata": { "collapsed": false }, "outputs": [ { "data": { "image/png": "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\nXvbeOLi8jYl+gVmGr01dQL7atu37PoTQNM1wsB7erw03Dgfutm2HG1erVVEUq9Xq9Jah5yiKouu6\nq6urs8/VdV3XdcNyVVV937dtO/xYlmVZlod1mqY5/Emf1lPX9fDU4e7jwum9uq47PN1d9zrdirqu\ni6JYr9fX19ebzaYoiu12+8xnv7WlZ2uO2RvPfC3KshwKGxZWq9Vp1nZdt91ur66ujtc5rfD0NT19\nLU7vtdvt+r4viqLv+7ti/nSvHjrUpmnee++9yH14+rt6WvPpHjt9rphnv7VO3/fb7Xaz2Ryqqqrq\ndNsPL+Jutzt+ruNtv7UVw1/T8FyH151lE0h36vt++GsfjonDjcMtw1/XarVarVbDH95wPA0hnN4y\nNB8hhOGQfTaTyrLs+3542KqqhrvfOqYPf5O3BjFO6xluuTzWceteZVmePt0tp1ux2Wx2u11d1w8f\nPiyKYtj24fB3eORnbulwr1s1x+yNs9t+a88P6TIcyM5GwtCy3FrnbIW3Hvn0tTi916HdvLA3zv5u\ntG1bluVms7nrtTh9rtPf1dOaT/fY2ed65rPfWufwFMf75HTbi6K49SqfbvutrbjrdWfBBFKU4YB7\nl9NjzfEtMX9Uu91uOPK+cIWpnd2K4VDedd3Zo+1ZMVv6Mnvj1vH3+vr6cCg8q6qquq6PB9PuevbL\n2/hiNZ/u1UOXVtf1hR7lwnMd33655tPninn2mHViXP67yPlvgXQE0iWHUY5b7+8OAxFN0wyjCof3\niae3FEVxuNfQjgxDE8Nqxy3F4cZhvGK32w0DGuv1uiiKYYXh7IPhXrfqGe5+GDm89e747HYdBrue\nOWR3ayuKoqjrehgdur6+Pry3bZpmKOx4KOnClh6XeliI2Rsxr0X4Im8ePXp04VUuy/L42Hr67KeP\nfPpa3LrXsE744sB61944/d2o63p4KS9kyWmF4eR39ezeuLXHTp8r5tlP1zmMSw/75Oy2nzrd9tOt\nOPu6s2D3bm5upq6BhRiG/qeu4h/0fb/b7e6auuPVq+v68nggX2U6JMZx6w375IZ6mqYZ97xBXsxx\nazh1LeRLhwRAFlyHBEAWBBIAWRBIAGRBIAGQBYEEQBYEEgBZyPo6pOPPCrv8UaGX1wFYtt1ud/jM\n/qlreXHzuA5pt9vddXljhp8OADCJuR8Ps+6QQgh939d1feHq7uGjgocPwjr7SvzkJz954403huVv\n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\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "Rx = corr(X_group);\n", "niak_visu_matrix(Rx);\n", "title('correlation of explanatory variables across subject')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# Connectivity maps" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Now we are going to get a list of the connectivity maps associated with each subject for one network, say the DMN. Labels for each network have been specified when running the `connectome` pipeline. We simply grab the outputs of the connectome pipeline. " ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "path_connectome = [pwd filesep 'connectome'];\n", "files_conn = niak_grab_connectome(path_connectome);\n", "files_in.data = files_conn.rmap;" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Brain mask\n", "We specify the mask of brain networks to the pipeline, so that it can use it to mask the grey matter. " ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "files_in.mask = files_conn.network_rois;" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# Set up the options of the pipeline" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "First specify where to save the outputs, and how many networks to use: " ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": true }, "outputs": [], "source": [ "%% General\n", "opt.folder_out = [pwd filesep 'subtype']; " ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Then specify which covariates to use as confounds **before** the generation of subtypes. " ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": true }, "outputs": [], "source": [ "% a list of variable names to be regressed out\n", "% If unspecified or left empty, no confounds are regressed\n", "opt.stack.regress_conf = {'fd'}; " ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The options for the subtypes themselves:" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": true }, "outputs": [], "source": [ "%% Subtyping\n", "opt.subtype.nb_subtype = 2; % the number of subtypes to extract\n", "opt.subtype.sub_map_type = 'mean'; % the model for the subtype maps (options are 'mean' or 'median')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Now we add an association test between subtypes and the patient label:" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": true }, "outputs": [], "source": [ "% scalar number for the level of acceptable false-discovery rate (FDR) for the t-maps\n", "opt.association.patient.fdr = 0.05; \n", "% turn on/off normalization of covariates in model (true: apply / false: don't apply)\n", "opt.association.patient.normalize_x = false; \n", "% turn on/off normalization of all data (true: apply / false: don't apply)\n", "opt.association.patient.normalize_y = false; \n", "% turn on/off adding a constant covariate to the model\n", "opt.association.patient.flag_intercept = true; \n", "% To test a main effect of a variable\n", "opt.association.patient.contrast.patient = 1; % scalar number for the weight of the variable in the contrast\n", "opt.association.patient.contrast.fd = 0; % scalar number for the weight of the variable in the contrast\n", "opt.association.patient.contrast.age = 0; % scalar number for the weight of the variable in the contrast\n", "% type of data for visulization (options are 'continuous' or 'categorical')\n", "opt.association.patient.type_visu = 'continuous'; " ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "It is also possible to add a single chi-square test on the relationship between subtypes and a categorical variable:" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": true }, "outputs": [], "source": [ "% string name of the column in files_in.model on which the contigency table will be based\n", "opt.chi2 = 'patient'; " ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# Run the pipeline" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "opt.flag_test = false; % Put this flag to true to just generate the pipeline without running it.\n", "pipeline = niak_pipeline_subtype(files_in,opt);" ] } ], "metadata": { "kernelspec": { "display_name": "Octave", "language": "octave", "name": "octave" }, "language_info": { "file_extension": ".m", "help_links": [ { "text": "GNU Octave", "url": "https://www.gnu.org/software/octave/support.html" }, { "text": "Octave Kernel", "url": "https://github.com/Calysto/octave_kernel" }, { "text": "MetaKernel Magics", "url": "https://github.com/calysto/metakernel/blob/master/metakernel/magics/README.md" } ], "mimetype": "text/x-octave", "name": "octave", "version": "4.0.2" } }, "nbformat": 4, "nbformat_minor": 0 }