I would like to concatenate a loop.

1 visualizzazione (ultimi 30 giorni)
Francis Herman
Francis Herman il 13 Set 2017
Risposto: Helper il 15 Set 2017
Hello, I have a 20000x100 dataset, I know how to run a function (generate surrogate values) for each 100 columns as shown in the code below. "theta" and "AHGT" are each 20000x100 datasets
AHGT1=AHGT(:,1)
Theta1=theta(:,1)
for s=1:numsurrogate
surrogate_amp1=[AHGT1(skip(s):end); AHGT1(1:skip(s)-1)];
surrogate_m(s)=mean(surrogate_amp1.*exp(i*Theta1));
end
What I would like to do is create a loop for each 100 columns and whose output surrogate_m(:,x) array concatenates into a single matrix. This is what I have tried, unsuccessfully.
for w=1:100
AmplitudeHighGamma(w)=AHGT(:,w);
ThetaPhase(w)=theta(:,w);
for s=1:numsurrogate
surrogate_amplitudetotal1=[AmplitudeHighGamma(skip(s):end); AmplitudeHighGamma(1:skip(s)-1)];
surrogate_mtotal(s)=mean(surrogate_amptotal1.*exp(i*ThetaPhase));
end
loopsurrogate=[surrogate_mtotal(w)]
end
Any advice is appreciated.
  1 Commento
KSSV
KSSV il 13 Set 2017
what is skip..you can achieve your task without for loops.....

Accedi per commentare.

Risposte (1)

Helper
Helper il 15 Set 2017
Maybe change "loopsurrogate=[surrogate_mtotal(w)]" to "loopsurrogate=[loopsurrogate, surrogate_mtotal(w)]" will be helpful

Categorie

Scopri di più su Creating and Concatenating Matrices in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by