{"id":14989207,"url":"https://github.com/adamreeve/nptdms","last_synced_at":"2025-05-14T19:09:53.208Z","repository":{"id":2555121,"uuid":"3533807","full_name":"adamreeve/npTDMS","owner":"adamreeve","description":"NumPy based Python module for reading TDMS files produced by LabView","archived":false,"fork":false,"pushed_at":"2025-01-22T01:41:47.000Z","size":806,"stargazers_count":256,"open_issues_count":21,"forks_count":93,"subscribers_count":24,"default_branch":"master","last_synced_at":"2025-05-14T19:09:50.252Z","etag":null,"topics":["daqmx","labview","national-instruments","numpy","python","scipy","tdms"],"latest_commit_sha":null,"homepage":"http://nptdms.readthedocs.io","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"lgpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/adamreeve.png","metadata":{"files":{"readme":"README.rst","changelog":null,"contributing":null,"funding":null,"license":"COPYING","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2012-02-24T07:56:01.000Z","updated_at":"2025-05-14T12:30:21.000Z","dependencies_parsed_at":"2023-11-09T01:27:41.393Z","dependency_job_id":"dfd16f04-b1fa-4e64-aa26-260cf6a08e31","html_url":"https://github.com/adamreeve/npTDMS","commit_stats":{"total_commits":444,"total_committers":31,"mean_commits":14.32258064516129,"dds":"0.22297297297297303","last_synced_commit":"d2cddeb3c254927d7ea202ad97f31b0246bf7cd6"},"previous_names":[],"tags_count":75,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/adamreeve%2FnpTDMS","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/adamreeve%2FnpTDMS/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/adamreeve%2FnpTDMS/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/adamreeve%2FnpTDMS/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/adamreeve","download_url":"https://codeload.github.com/adamreeve/npTDMS/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254209859,"owners_count":22032897,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["daqmx","labview","national-instruments","numpy","python","scipy","tdms"],"created_at":"2024-09-24T14:17:51.995Z","updated_at":"2025-05-14T19:09:52.064Z","avatar_url":"https://github.com/adamreeve.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"npTDMS\n======\n\n.. image:: https://img.shields.io/pypi/v/npTDMS.svg\n    :alt: PyPI Version\n    :target: https://pypi.org/project/npTDMS/\n.. image:: https://github.com/adamreeve/npTDMS/actions/workflows/ci-cd.yml/badge.svg?branch=master\u0026event=push\n    :alt: Build status\n    :target: https://github.com/adamreeve/npTDMS/actions/workflows/ci-cd.yml?query=event%3Apush+branch%3Amaster\n.. image:: https://readthedocs.org/projects/nptdms/badge/?version=latest\n    :target: https://nptdms.readthedocs.io/en/latest/?badge=latest\n    :alt: Documentation Status\n.. image:: https://codecov.io/gh/adamreeve/npTDMS/branch/master/graph/badge.svg\n    :target: https://codecov.io/gh/adamreeve/npTDMS\n    :alt: Code coverage\n\n\nnpTDMS is a cross-platform Python package for reading and writing TDMS files as produced by LabVIEW,\nand is built on top of the `numpy \u003chttp://www.numpy.org/\u003e`__ package.\nData is read from TDMS files as numpy arrays,\nand npTDMS also allows writing numpy arrays to TDMS files.\n\nTDMS files are structured in a hierarchy of groups and channels.\nA TDMS file can contain multiple groups, which may each contain multiple channels.\nA file, group and channel may all have properties associated with them,\nbut only channels have array data.\n\nTypical usage when reading a TDMS file might look like::\n\n    from nptdms import TdmsFile\n\n    tdms_file = TdmsFile.read(\"path_to_file.tdms\")\n    group = tdms_file['group name']\n    channel = group['channel name']\n    channel_data = channel[:]\n    channel_properties = channel.properties\n\nThe ``TdmsFile.read`` method reads all data into memory immediately.\nWhen you are working with large TDMS files or don't need to read all channel data,\nyou can instead use ``TdmsFile.open``. This is more memory efficient but\naccessing data can be slower::\n\n    with TdmsFile.open(\"path_to_file.tdms\") as tdms_file:\n        group = tdms_file['group name']\n        channel = group['channel name']\n        channel_data = channel[:]\n\nnpTDMS also has rudimentary support for writing TDMS files.\nUsing npTDMS to write a TDMS file looks like::\n\n    from nptdms import TdmsWriter, ChannelObject\n    import numpy\n\n    with TdmsWriter(\"path_to_file.tdms\") as tdms_writer:\n        data_array = numpy.linspace(0, 1, 10)\n        channel = ChannelObject('group name', 'channel name', data_array)\n        tdms_writer.write_segment([channel])\n\nFor more detailed documentation on reading and writing TDMS files,\nsee the `npTDMS documentation \u003chttp://nptdms.readthedocs.io\u003e`__.\n\nInstallation\n------------\n\nnpTDMS is available from the Python Package Index, so the easiest way to\ninstall it is by running::\n\n    pip install npTDMS\n\nThere are optional features available that require additional dependencies.\nThese are `hdf` for hdf export, `pandas` for pandas DataFrame export, and\n`thermocouple_scaling` for using thermocouple scalings. You can specify these\nextra features when installing npTDMS to also install the dependencies they\nrequire::\n\n    pip install npTDMS[hdf,pandas,thermocouple_scaling]\n\nAlternatively, after downloading the source code you can extract it and\nchange into the new directory, then run::\n\n    python setup.py install\n\nLinks\n-----\n\nSource code lives at https://github.com/adamreeve/npTDMS and any issues can be\nreported at https://github.com/adamreeve/npTDMS/issues.\nDocumentation is available at http://nptdms.readthedocs.io.\n\nLimitations\n-----------\n\nThis module doesn't support TDMS files with XML headers or with\nextended precision floating point data.\n\nContributors/Thanks\n-------------------\n\nThanks to Floris van Vugt who wrote the pyTDMS module,\nwhich helped when writing this module.\n\nThanks to Tony Perkins, Ruben De Smet, Martin Hochwallner and Peter Duncan\nfor contributing support for converting to Pandas DataFrames.\n\nThanks to nmgeek and jshridha for implementing support for DAQmx raw data\nfiles.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fadamreeve%2Fnptdms","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fadamreeve%2Fnptdms","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fadamreeve%2Fnptdms/lists"}