I keep encountering an error when trying to create an iddata object, and I can't understand why

43 views (last 30 days)
L T on 17 Mar 2015
Answered: omer cakmak on 8 Jul 2019
I am trying to convert a vector to an iddata object. I have a vector (y) of dimension [7800 X 1],and there is nothing particularly unique about it.
If try to convert to an iddata object as follows:
y = iddata(y);
I get the following error:
Error using iddata (line 193)
The value of the "OutputData" property must be a double matrix or a cell array of such matrices.
I can't for the life of me figure out what is wrong with my timeseries. I'm able to convert vectors of random numbers to iddata object. Does anyone have a clue why I'm getting this error.
All my thanks.

Answers (3)

L T on 17 Mar 2015
Edited: L T on 17 Mar 2015
Um, I figured it out. My vector was single precision.

Fei Yuan
Fei Yuan on 13 Jul 2018
Thanks for the answers. I got the same issue. After converting the data to "double" data type, it works good.

omer cakmak
omer cakmak on 8 Jul 2019
Thanks man. In my problem they were two important points;
1) Convert type single to double ie. double(y).
2) Take transpose.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by