ScyIO UnB

Scientific Input / Output — graphical interface
Digital Signal Processing Group · University of Brasilia (UnB)

ScyIO UnB helps you read, inspect, convert, and merge scientific data files between common formats used in signal processing and machine-learning workflows. The interface has four working modes in the left column: Read, Convert, Batch, and Merge files. Below those modes, Configuration lets you customize colors and style.

Launch the application with python ScyIO_UnB_GUI.py (Spyder or a terminal), or run the Windows executable. Conversions and merges run in the background; watch the status bar and the log panel for progress.

1. Modes overview

Mode Purpose
Read Open one data file, list its variables, and preview values in the Inspector panel.
Convert Convert a single file to another format and write it to a destination folder (same base name, new extension).
Batch Convert all matching files in a folder to a chosen target format.
Merge files Combine all matching files of one format in a folder into a single output file (.mat, .parquet, or .h5). Unlike Batch, Merge does not create one output per input file.

2. Supported formats

3. Read mode

  1. Select Read in the left column.
  2. Drop a file onto the drop zone, or use Browse… / paste a path and click Open.
  3. The detected format appears as a chip. Variables are listed in the Inspector on the right.
  4. Click a variable name to see shape and a short numeric preview.
Read mode is for structured formats (CSV, MAT, HDF5, Parquet). Raw .sig files are handled in Convert / Batch, where you must supply fs and sample type.

4. Convert mode (single file)

  1. Select Convert.
  2. Choose the source file (drop zone or Browse).
  3. Pick a Target format from the list of conversions available for that source type.
  4. Set the Destination folder (default: d:/Dropbox/Python_Imports/HDF5/).
  5. Click Convert file. The log shows the output path.

Available single-file conversions

SourceTargets
CSVMATLAB (.mat), HDF5 (.h5), Parquet (.parquet)
MATLAB (.mat)HDF5 (.h5), Parquet (.parquet)
HDF5 (.h5)Parquet (.parquet)
ParquetHDF5 (.h5)
Raw (.sig)MATLAB (.mat), HDF5 (.h5), Parquet (.parquet)

Raw signal parameters (Convert)

When the source is a raw binary file (.sig), extra fields appear:

Output keeps the original stem and adds the new extension, e.g. DS01IS01.SIG → DS01IS01.mat.

5. Batch mode (folder)

  1. Select Batch.
  2. Choose the Source folder.
  3. Set Source type (CSV, MATLAB, HDF5, Parquet, or Raw).
  4. Choose Target format and Destination folder.
  5. Optional toggles:
  6. Click Convert folder. The log lists written files.

Raw signal parameters (Batch)

When Source type is Raw (.sig), you must also set:

Example: convert all Isokinetic .SIG files with fs = 1024, type = int, extension = sig to .mat, .h5, or .parquet in the destination folder.

6. Merge files mode (folder → one file)

Use Merge files when you want every file of a given format in a folder written as one combined file. The button is in the left column, directly below Batch.

Batch vs Merge

Batch Merge files
Input Many files in a folder Many files in a folder
Output One converted file per source file A single combined file for the whole folder
Formats CSV, MAT, HDF5, Parquet, Raw → chosen target Same format in and out: MAT→MAT, Parquet→Parquet, HDF5→HDF5

How to merge

  1. Select Merge files.
  2. Set Source folder — directory that contains the files to combine.
  3. Choose Source format (see table below). The Target name extension is updated automatically.
  4. Edit Target name if you want a custom output filename (it must end with the correct extension).
  5. Set Destination — folder where the merged file will be written. The final path is destination_directory / target_name.
  6. Optional: enable Recursive to include matching files in subfolders.
  7. Click Merge folder. Progress appears in the merge log and status bar.

Fields

Field Meaning
Source folder Folder that holds the source files (e.g. all .mat files).
Source format Which file type to collect and merge.
Target name Name of the single output file, including extension (.mat, .parquet, or .h5).
Destination Folder where that output file is saved.
Recursive If checked, also merge matching files found in subfolders.

Supported merge operations

Source format What is merged Default target name
MATLAB (.mat) All .mat files → one .mat merge_files.mat
Parquet (.parquet) All .parquet files → one .parquet merge_files.parquet
HDF5 (.h5) All .h5 / .hdf5 tables → one .h5 merge_files.h5
Merged Parquet and HDF5 tables are written so they can be opened again in Read mode (and inspected in the GUI). Rows are stacked; columns such as source_name / source_path identify which original file each row came from (when available).

Examples

Example 1 — merge all MATLAB files

Example 2 — merge all Parquet files

Example 3 — merge all HDF5 files

7. Configuration (colors and style)

Select Configuration (directly below Merge files) to customize the GUI appearance.

8. Inspector and status

9. Tips

10. Related library

The GUI calls the Python library ScyIO_UnB.py. Scripted examples are in ScyIO_UnB_Test.py, including: