replacing matrix rows in a loop

16 visualizzazioni (ultimi 30 giorni)
Fred
Fred il 11 Feb 2013
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 Commenti
Azzi Abdelmalek
Azzi Abdelmalek il 11 Feb 2013
Provide a short example
Fred
Fred il 11 Feb 2013
Modificato: Fred il 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))

Accedi per commentare.

Risposta accettata

Sean de Wolski
Sean de Wolski il 11 Feb 2013
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

Più risposte (1)

Azzi Abdelmalek
Azzi Abdelmalek il 11 Feb 2013
k=10;
n=20;
X=rand(1,n)
out=cell2mat(arrayfun(@(y) he_polynomial(1,k,X(y)),(1:n)','un',0))

Categorie

Scopri di più su Operating on Diagonal Matrices in Help Center e File Exchange

Tag

Prodotti

Community Treasure Hunt

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

Start Hunting!

Translated by