Skip to main content

Xnat in Python

Project description

pyxnat is a simple python library that relies on the REST API provided by the XNAT platform since its 1.4 version. XNAT is an extensible database for neuroimaging data. The main objective is to ease communications with an XNAT server to plug-in external tools or python scripts to process the data. It features:

  1. resources browsing capabilities

  2. read and write access to resources

  3. complex searches

  4. disk-caching of requested files and resources


A short overview

Setup the connection
>>> from pyxnat import Interface
>>> interface = Interface(server='http://central.xnat.org:8080',
                          user='login',
                          password='pass',
                          cachedir=os.path.join(os.path.expanduser('~'),
                                                '.store')
                          )
Browse the resources
>>> interface.select.projects().get()
[u'CENTRAL_OASIS_CS', u'CENTRAL_OASIS_LONG', ...]
Create new resources
>>> interface.select.project('my_project').create()
>>> interface.select.project('my_project').resource('images').file('image.nii').put('/tmp/image.nii')
Make complex searches
>>> table = interface.select('xnat:subjectData', ['xnat:subjectData/PROJECT', 'xnat:subjectData/SUBJECT_ID']
                    ).where([('xnat:subjectData/SUBJECT_ID','LIKE','%'),
                             ('xnat:subjectData/PROJECT', '=', 'my_project'),
                             'AND'
                             ])

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pyxnat-0.6.1.tar.gz (300.2 kB view hashes)

Uploaded Source

Built Distribution

pyxnat-0.6.1-py2.6.egg (244.2 kB view hashes)

Uploaded Source

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page