Replicating values a certain number of times
2 次查看(过去 30 天)
显示 更早的评论
Hello, I have a long array of data from 0 to 1959 in steps of 1. Is there any way to expand that data so that each value repeats x number of times? ie. if x is 4
new = 0 0 0 0 1 1 1 1 2 2 2 2 3 3 3 3...
I have compressed data and I want to be able to expand it with this approximation.
Thanks for your help!
0 个评论
采纳的回答
Wayne King
2013-12-3
编辑:Wayne King
2013-12-3
There are a number of ways to do this.
One way use a constant interpolator:
x = 0:9;
h = ones(4,1);
xnew = zeros(40,1);
xnew(1:4:end) = x;
y = filter(h,1,xnew);
Another way use repmat()
x = (0:9)';
x = (repmat(x,1,4))';
x = reshape(x,40,1);
0 个评论
更多回答(2 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Operating on Diagonal Matrices 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!