CSV is simple because it leaves structure behind

CSV is widely usable because it is a flat table. That simplicity is also the reason a careless conversion can lose useful context from a TDMS file.

Group / Channel structure, properties, data type, waveform timing information, and the location of a selected subset are not automatically preserved by the CSV format itself.

Preserve the original sample index

TdmsSlice writes an Index column using the original Channel sample index. If you export samples starting at index 250000, the first exported row remains index 250000 rather than becoming index 0.

This makes a partial export easier to correlate with the original Channel and with another tool that refers to the same sample positions.

Treat time as metadata-derived information, not a guess

TDMS timing can be represented in different ways. When a selected Channel contains valid waveform timing information that TdmsSlice can safely use, the CSV can include either RelativeTimeSeconds or TimestampUtc alongside Index.

If that timing information is not available or is not safe to interpret for the selected Channel, TdmsSlice keeps Index without inventing a time axis.

Likewise, a separate Channel with a name such as time or Timestamp is not automatically attached to a value Channel just because the names look related.

Keep metadata beside the table

A companion metadata JSON is created with a CSV export. It records export context such as the selected source, Group / Channel, data type, sample range, timing information where applicable, and other relevant metadata.

Keeping the CSV and its metadata JSON together makes the handoff easier to audit later, especially when the CSV is copied away from the original TDMS file.

Different data types may need different CSV shapes

Not every TDMS Channel maps to a single numeric Value column. For example, native Complex data is exported with separate Real and Imaginary columns, while raw Timestamp Channel values are represented as UTC timestamps.

This is another reason to preserve the data type and export metadata rather than assuming every CSV produced from TDMS has identical semantics.

Think of provenance as part of the export

The most useful subset is not merely a smaller table. It is a smaller table whose origin is still understandable.

Preserving Index, adding time only when justified, and keeping metadata beside the CSV provides a lightweight provenance trail without attempting to recreate the full TDMS structure in another format.