Insert a blank column every n columns

Hi. I have a matrix (size 10x360) and I want insert a blank column every n columns. How can I do? I have tried to use for loop, but unsuccessfully.
Thanks, Alessandro

답변 (5개)

Carlos
Carlos 2013년 3월 21일
편집: Carlos 2013년 3월 21일

0 개 추천

Try this, if you want to insert a blank column every 5 columns
A=rand(10,360);
A=num2cell(A);
A(:,1:5:end)=cell(1);

댓글 수: 2

It doesn't work...it deletes the column, it does not insert a blank column.
Carlos
Carlos 2013년 3월 21일
OK, I misunderstood your question, look at the file exchange function insertrows uploaded by Jos, that http://www.mathworks.com/matlabcentral/fileexchange/9984, that may do the job for you.

댓글을 달려면 로그인하십시오.

Peter
Peter 2013년 3월 21일

0 개 추천

To insert columns with zeros you can try this:
A=rand(10,360);
n = 5;
nc = floor(360/n);
for c=1:nc;
B(:,(n*c+c-n):(n*c+c-1)) = A(:,(n*(c-1)+1):n*c);
end
If you need empty cells, you can convert your matrix to a cell array like Carlos showed before.
Andrei Bobrov
Andrei Bobrov 2013년 3월 21일
편집: Andrei Bobrov 2013년 3월 22일

0 개 추천

yourmatrix = randi(23,10,360);
n = 6;
yourmatrix(:,n:n:end) = nan;
or
a = randi(23,10,360);% your matrix
n = 5;
s = size(a);
k = floor(s(2)/n);
n1 = k*n;
out = [reshape([reshape(a(:,1:n1),s(1),k,[]),...
repmat(nan,[s(1),1,n])],s(1),[]),a(:,n1+1:end)];
or
a = randi(32,10,360);
n = 7;
out = zeros(s+[0 floor(s(2)/n)]);
out(:,n+1:n+1:end) = nan;
out(~isnan(out)) = a;
dinesh wankhede
dinesh wankhede 2017년 2월 18일

0 개 추천

i have matrix a with some rows and some columns i want matrix b with same number of rows but double the number of columns such that every column repeats itself
minhua su
minhua su 2019년 4월 18일

0 개 추천

this is how i solved the problem recently
str = strings([1,508*7])
i=[]
j=1
for i=1:508
str(j)=bamfiles(i)
j=j+7
end

댓글 수: 1

minhua su
minhua su 2019년 4월 18일
bamfiles is my original matrix, which is (size 1X508), and i create a new matrix str (the size is decided by how many every columns you want to insert)

댓글을 달려면 로그인하십시오.

카테고리

도움말 센터File Exchange에서 Loops and Conditional Statements에 대해 자세히 알아보기

질문:

2013년 3월 21일

댓글:

2019년 4월 18일

Community Treasure Hunt

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

Start Hunting!

Translated by