Structured Data Manipulation
The "structy" class manages internally a large data matrix of rows x fields, and it logically maps this data to a set of fields that can be scalar values or vectors.
Features:
- efficient storage of data in single matrix
- units
- flexible referencing
- project
- resample of data by time stored in any field
- sorting by field
- rename of field, prefixing
- concatenation vertical or horizontal
- import/export to basic structure
Construction is easy: my = struct(data,{'field1','field2'});
Construction of vector: my = struct(data,{'field1','field2'},{1:3,4:5}); % field1 is data 1..3 and field2 is 4..5
Access is as in struct or more complex:
my.field1
my(1:10)
my(1:10).field1
my(1:10).field1(3) if field1 is a vector field
Data size is available as size(my) or size(my,'field')
Structy can be cat vertical or horizontal as:
[a,b] if a and b have not overlapping fields and same number of elements
[a;b] if a and b have same fields
Projection of data is possible using: project(my,{'field1','...'})
Data can be also sorted by given column
Fields can be renamed or modified with prefix using raname(my,oldfield,newfield) and addprefix(my,prefix)
Finally it is possible to perform simple interpolation using a field as a timefield data. All the other gets interpolated by interp1.
It can be stored on MAT file as struct by using asstruct and then constructing it again by this structure.
TimeSeries comparison: time entries can be duplicated, construction is simpler, but no events and simpler API at this stage
Zitieren als
Emanuele Ruffaldi (2024). Structured Data Manipulation (https://www.mathworks.com/matlabcentral/fileexchange/26409-structured-data-manipulation), MATLAB Central File Exchange. Abgerufen.
Kompatibilität der MATLAB-Version
Plattform-Kompatibilität
Windows macOS LinuxKategorien
Tags
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!Live Editor erkunden
Erstellen Sie Skripte mit Code, Ausgabe und formatiertem Text in einem einzigen ausführbaren Dokument.
@structy/
Version | Veröffentlicht | Versionshinweise | |
---|---|---|---|
1.3.0.0 | Small bugfix in rename and addprefix |
||
1.1.0.0 | Added interpolation of data based on timefield
|
||
1.0.0.0 |