Installation and Quick Start¶
npTDMS is available from the Python Package Index, so the easiest way to install it is by running:
pip install npTDMS
There are optional features available that require additional dependencies.
hdf for hdf export,
pandas for pandas DataFrame export,
thermocouple_scaling for reading files that use thermocouple scalings.
You can specify these extra features when installing npTDMS to also install the dependencies they require:
pip install npTDMS[hdf,pandas,thermocouple_scaling]
Alternatively, after downloading the source code you can extract it and change into the new directory, then run:
python setup.py install
Typical usage when reading a TDMS file might look like:
from nptdms import TdmsFile tdms_file = TdmsFile.read("path_to_file.tdms") for group in tdms_file.groups(): group_name = group.name for channel in group.channels(): channel_name = channel.name # Access dictionary of properties: properties = channel.properties # Access numpy array of data for channel: data = channel[:] # Access a subset of data data_subset = channel[100:200]
Or to access a channel by group name and channel name directly:
group = tdms_file[group_name] channel = group[channel_name]
TdmsFile.read method reads all data into memory immediately.
When you are working with large TDMS files or don’t need to read all channel data,
you can instead use
TdmsFile.open. This is more memory efficient but
accessing data can be slower:
with TdmsFile.open("path_to_file.tdms"): channel = tdms_file[group_name][channel_name] channel_data = channel[:]
npTDMS also has rudimentary support for writing TDMS files. Using npTDMS to write a TDMS file looks like:
from nptdms import TdmsWriter, ChannelObject import numpy with TdmsWriter("path_to_file.tdms") as tdms_writer: data_array = numpy.linspace(0, 1, 10) channel = ChannelObject('Group', 'Channel1', data_array) tdms_writer.write_segment([channel])