Skip to content


Subversion checkout URL

You can clone with
Download ZIP
NumPy based Python module for reading TDMS files produced by LabView
Python Shell
Failed to load latest commit information.
docs Work on packaging
nptdms Fix up sphinx documentation for as_dataframe methods
CHANGES.txt Version 0.7.0
COPYING Fix licensing files
COPYING.LESSER Fix licensing files
README.rst Add script to run nosetests with coverage
setup.cfg Work on packaging Work on packaging
wercker.yml Style tidy up to pass pep8



wercker status

Cross-platform module for reading TDMS files as produced by LabView. Data is stored as a numpy array, and is loaded using numpy's fromfile routine so is very fast.

Typical usage might look like:

#!/usr/bin/env python

from nptdms import TdmsFile
tdms_file = TdmsFile("path_to_file.tdms")
channel = tdms_file.object('Group', 'Channel1')
data =
time = channel.time_track()
# do stuff with data

For more information, see the npTDMS documentation.


npTDMS is available from the Python Package Index, so the easiest way to install it is by running (as root):

pip install npTDMS

Alternatively, after downloading the source code you can extract it and change into the new directory, then run:

python install


Source code lives at and any issues can be reported at Documentation is available at

What Currently Doesn't Work

This module doesn't support TDMS files with XML headers or with extended floating point data.

Files with DAQmx raw data are not supported either.


Thanks to Floris van Vugt who wrote the pyTDMS module, which helped when writing this module.

Thanks to Tony Perkins, Ruben De Smet, Martin Hochwallner and Peter Duncan for contributing support for converting to Pandas DataFrames.

Something went wrong with that request. Please try again.