{ "cells": [ { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "155622" ] }, "execution_count": 1, "metadata": {}, "output_type": "execute_result" } ], "source": [ "from freesurfer_surface import Surface\n", "\n", "SUBJECTS_DIR = '../tests/subjects'\n", "surface = Surface.read_triangular(SUBJECTS_DIR + '/fabian/surf/lh.pial')\n", "surface.load_annotation_file(SUBJECTS_DIR + '/fabian/label/lh.aparc.annot')\n", "len(surface.annotation.vertex_values)" ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "'/autofs/space/tanha_002/users/greve/fsdev.build/average/colortable_desikan_killiany.txt'" ] }, "execution_count": 2, "metadata": {}, "output_type": "execute_result" } ], "source": [ "surface.annotation.colortable_path.decode()" ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
nameredgreenbluetransparency
0unknown252550
1bankssts25401000
2caudalanteriorcingulate1251601000
3caudalmiddlefrontal1000250
4corpuscallosum12050700
5cuneus220100200
6entorhinal22010200
7fusiform1801402200
8inferiorparietal220220600
9inferiortemporal180120400
10isthmuscingulate140140200
11lateraloccipital20140300
12lateralorbitofrontal3550750
13lingual2251401400
14medialorbitofrontal20075350
15middletemporal160501000
16parahippocampal20602200
17paracentral60602200
18parsopercularis2201401800
19parsorbitalis20501000
20parstriangularis22020600
21pericalcarine120601000
22postcentral22020200
23posteriorcingulate2202201800
24precentral60220200
25precuneus1601801400
26rostralanteriorcingulate80140200
27rostralmiddlefrontal75125500
28superiorfrontal201602200
29superiorparietal201401800
30superiortemporal1402202200
31supramarginal80201600
32frontalpole10010000
33temporalpole70170200
34transversetemporal1502001500
35insula255321920
\n", "
" ], "text/plain": [ " name red green blue transparency\n", "0 unknown 25 25 5 0\n", "1 bankssts 25 40 100 0\n", "2 caudalanteriorcingulate 125 160 100 0\n", "3 caudalmiddlefrontal 100 0 25 0\n", "4 corpuscallosum 120 50 70 0\n", "5 cuneus 220 100 20 0\n", "6 entorhinal 220 10 20 0\n", "7 fusiform 180 140 220 0\n", "8 inferiorparietal 220 220 60 0\n", "9 inferiortemporal 180 120 40 0\n", "10 isthmuscingulate 140 140 20 0\n", "11 lateraloccipital 20 140 30 0\n", "12 lateralorbitofrontal 35 50 75 0\n", "13 lingual 225 140 140 0\n", "14 medialorbitofrontal 200 75 35 0\n", "15 middletemporal 160 50 100 0\n", "16 parahippocampal 20 60 220 0\n", "17 paracentral 60 60 220 0\n", "18 parsopercularis 220 140 180 0\n", "19 parsorbitalis 20 50 100 0\n", "20 parstriangularis 220 20 60 0\n", "21 pericalcarine 120 60 100 0\n", "22 postcentral 220 20 20 0\n", "23 posteriorcingulate 220 220 180 0\n", "24 precentral 60 220 20 0\n", "25 precuneus 160 180 140 0\n", "26 rostralanteriorcingulate 80 140 20 0\n", "27 rostralmiddlefrontal 75 125 50 0\n", "28 superiorfrontal 20 160 220 0\n", "29 superiorparietal 20 140 180 0\n", "30 superiortemporal 140 220 220 0\n", "31 supramarginal 80 20 160 0\n", "32 frontalpole 100 100 0 0\n", "33 temporalpole 70 170 20 0\n", "34 transversetemporal 150 200 150 0\n", "35 insula 255 32 192 0" ] }, "execution_count": 3, "metadata": {}, "output_type": "execute_result" } ], "source": [ "import pandas\n", "\n", "labels_frame = pandas.DataFrame((vars(label) for label in surface.annotation.labels),\n", " columns=['index', 'name', 'red', 'green', 'blue', 'transparency'])\n", "labels_frame.drop(columns=['index'])" ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
annotation_valuevertex_index
065589400
165589401
265589402
365589403
465589404
\n", "
" ], "text/plain": [ " annotation_value vertex_index\n", "0 6558940 0\n", "1 6558940 1\n", "2 6558940 2\n", "3 6558940 3\n", "4 6558940 4" ] }, "execution_count": 4, "metadata": {}, "output_type": "execute_result" } ], "source": [ "import pandas\n", "\n", "vertex_frame = pandas.DataFrame({'vertex_index': vertex_index, 'annotation_value': annotation_value}\n", " for vertex_index, annotation_value in surface.annotation.vertex_values.items())\n", "vertex_frame.head()" ] }, { "cell_type": "code", "execution_count": 5, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "10542100 12532\n", "9221140 9883\n", "9182740 9792\n", "8204875 9484\n", "1351760 8156\n", "0 8062\n", "14423100 7944\n", "1316060 7095\n", "14474380 7006\n", "14433500 6737\n", "9211105 5636\n", "11832480 5560\n", "3302560 5207\n", "9231540 5003\n", "7874740 4756\n", "3296035 4383\n", "6500 4128\n", "2146559 4117\n", "6558940 3033\n", "4924360 3017\n", "9221340 2839\n", "3957880 2734\n", "3988540 2507\n", "1326300 2460\n", "14464220 2352\n", "9180300 1861\n", "9180240 1711\n", "10511485 1362\n", "2647065 1322\n", "3302420 1078\n", "3988500 991\n", "13145750 990\n", "660700 789\n", "11146310 727\n", "6553700 368\n", "Name: annotation_value, dtype: int64" ] }, "execution_count": 5, "metadata": {}, "output_type": "execute_result" } ], "source": [ "vertex_frame['annotation_value'].value_counts()" ] } ], "metadata": { "kernelspec": { "display_name": "Python 3", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.6.7" } }, "nbformat": 4, "nbformat_minor": 2 }