How can I generate the Hankel matrix using the measured datapoints?
20 ビュー (過去 30 日間)
古いコメントを表示
Dear Researchers, how can I generate a Hankel matrix based on the available data?
For instance, I have the measured data as y = [0 1 3 5 7; 0 2 4 6 8]; I want to generate the Hankel matrix as Y = [y(1) y(2) y(3) y(4); y(2) y(3) y(4) y(5)], where y(k) represents the measured data at k-th time instance, i.e. y(1) = [0; 0], so y(k) is a 2x1 column vector. So, I want to generate the Hankel matrix in which each element is a 2x1 column vector. In my case, I want to get this matrix Y = [0 1 3 5; 0 2 4 6; 1 3 5 7; 2 4 6 8]. This matrix y is taken just for demonstration purpose. It would be better if you suggest solution for high dimension data matrix. This help will be valuable for me! Thanks!
0 件のコメント
採用された回答
Ameer Hamza
2020 年 12 月 27 日
Try something like this
y = [0 1 3 5 7; 0 2 4 6 8];
k = 2; % Y rows in output matrix
[m, n] = size(y);
i = hankel(1:n);
i = i(1:k, 1:end-1);
Y = reshape(y(:,i), m*k, [])
4 件のコメント
その他の回答 (0 件)
参考
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!