How can I insert zeros into every other index of a column vector?
24 views (last 30 days)
Show older comments
I would like to basically double my column vector by adding zeros in between each piece of data, for example,
A=
1000
1000
1000
1000
B=
1000
0
1000
0
1000
0
1000
0
I tried creating a column vector of zeros and then inserting those zeros into every other index without overwriting the data that was already in that index but I can't seem to get it to work. Any Suggestions would be greatly apprieciated.
0 Comments
Accepted Answer
Mischa Kim
on 24 Jun 2014
Edited: Mischa Kim
on 24 Jun 2014
Mark, you could use
A = [1000; 1000; 1000; 1000];
B = reshape([A'; zeros(size(A'))],[],1);
3 Comments
Sathyanarayanan Srinivasan
on 11 Oct 2018
What if I want to include more than just 1 zero? How can I use the reshape function in that case?
More Answers (1)
Paul Hoffrichter
on 23 Apr 2021
Edited: Paul Hoffrichter
on 23 Apr 2021
>> and in an horizontal array?
Whether A is vertical or horizontal, use upsample.
A =
1 2 3 4
>> B = upsample(A,2)
B =
1 0 2 0 3 0 4 0
>> A = A'
A =
1
2
3
4
>> B = upsample(A,2)
B =
1
0
2
0
3
0
4
0
>> What if I want to include more than just 1 zero?
B = upsample(A,3)
B =
1
0
0
2
0
0
3
0
0
4
0
0
1 Comment
bassant tolba
on 27 Apr 2023
Please what should I do to add inequal number of zeros between each elemet?
See Also
Categories
Find more on Matrix Indexing 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!