replacing matrix rows in a loop

Hi,
I am trying to build a n*k matrix but each row are produced by a function which has a 1*k output. How can I build that? I tried to build a n*k matrix of zeros and replace rows in a loop but since the dimensions are not same, I can't replace rows!
Thanks

2 Comments

Provide a short example
Fred
Fred on 11 Feb 2013
Edited: Fred on 11 Feb 2013
This is my function which is a polynomial with k outputs for each X(i) i=1:n and my matrix will be n*k
This is a row for a X(i): [P(1), P(2), ...P(k)]=he_polynomial(1, k, X(i))

Sign in to comment.

 Accepted Answer

X = zeros(100,10); %preallocate
for ii = 1:size(X,1) %loop over 100 rows
X(ii,:) = rand(1,10); %insert 10 random numbers
end

More Answers (1)

k=10;
n=20;
X=rand(1,n)
out=cell2mat(arrayfun(@(y) he_polynomial(1,k,X(y)),(1:n)','un',0))

Categories

Find more on Loops and Conditional Statements in Help Center and File Exchange

Products

Tags

Community Treasure Hunt

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

Start Hunting!