How do I compare two multivariate timeseries? NARMAX?
7 views (last 30 days)
Show older comments
I have two datasets in form of time-series: (Y_1(t), X_1(t)) and (Y_2(t), X_2(t)), which comes from measurements of the same object during two repetitions of the same experiment in two different structures(a dynamic driving cycle for the same IC engine).
Y is my response signal, measured CO2 level X contains information about environmental variables, such as humidity, pressure and temperature, and measurements of factors which affects Y, such as speed, momentum, humidity, flows, exhaust pressure&temperature, etc., for a total of 15 variables.
What is the most informative way to compare Y_1 and Y_2? I would like to be either be able to say that the Y_1 differs from Y_2 in a predictable way, due to a given change in a given variable contained in X or that the differences between Y_1 and Y_2 are not explainable by a change in X. Can creating a NARX/NARMAX model for either of them help me in any way?
Thanks in advance!
2 Comments
Greg Heath
on 26 Jul 2017
Edited: Greg Heath
on 26 Jul 2017
QUES: WHAT OR WHERE IS NARMAX???
ANS: I GUESS I FORGOT:
https://www.mathworks.com/matlabcentral/answers/346926-how-do-i-update-narx-network-to-a-narmax-network-using-the-matlab-neural-network-toolbox
Accepted Answer
Carl
on 25 Jul 2017
Hi Matteo. How to compare Y_1 and Y_2 in an informative way is a very broad question, and I think it would mostly depend on what specific information you're looking for. See the following page for a list of MATLAB functions for analyzing time series data in the System Identification Toolbox:
As well as using NARX and time-delay neural networks:
Alternatively, you can perform some type of regression on your X and Y data. The Statistics and Machine Learning Toolbox has a variety of regression models for this:
2 Comments
Greg Heath
on 30 Jul 2017
The Neural Network Toolbox does not have NARMAX and NARXMAX.
However, they probably are in one of the other toolboxes.
Greg
Greg Heath
on 5 Nov 2017
Edited: Greg Heath
on 5 Nov 2017
NARMAX and NARXMAX are not available in MATLAB.
The "MA" stands for "MovingAverage" and the above functions appear to differ from NAR and NARX by including linear combinations of past errors as feedback signals.
However, since
error = target-output
it looks like they can only be used as long as target data is available.
Greg
More Answers (1)
Greg Heath
on 5 Nov 2017
I assume both Y and X are multi-dimensional yielding multidimensional DX = X2-X1 and DY = Y1-Y2.
Then the best way that I can think of explaining differences is to curvefit both DX and DY. Then plot
DYi vs DXj where i and j represent dimension indices, not data points.
Hope this helps
Thank you for formally accepting my answer
Greg
0 Comments
See Also
Categories
Find more on Transaction Cost Analysis in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!