looping through multiple numbers

3 Ansichten (letzte 30 Tage)
C.G.
C.G. am 26 Mai 2022
Kommentiert: Walter Roberson am 26 Mai 2022
I have written a script, which tells me which rows of A are above the threshold, and then the difference between the numbers in column 1 of the variable 'abovethresh'.
This works fine, however I now want to write a loop which gives me this output, for avsize = 1:1:45. So I want it to apply the new threshold and do the same thing. I've tried to get a small section of this working to build on but I am getting the error below.
%single value
avsize = 10; %define avalanche threshold
abovethresh = A(A(:, 2) > 10,:);
wait_time = diff(abovethresh(:,1));
wait_time = wait_time(wait_time >15,:);
%loop
avsize = [1:1:45]
for i = 1:length(avsize)
a_t(i) = A(A(:,2) > avsize,:);
end
The logical indices in position 1 contain a true value outside of the array bounds.

Akzeptierte Antwort

Walter Roberson
Walter Roberson am 26 Mai 2022
a_t(i) = A(A(:,2) > avsize(i),:);
  6 Kommentare
C.G.
C.G. am 26 Mai 2022
Bearbeitet: C.G. am 26 Mai 2022
so are you saying I need to change the name of w_t(i) so it is not the same as the line above?
If i do that I get exactly the same error message.
Walter Roberson
Walter Roberson am 26 Mai 2022
all_w_t{i} = w_t(w_t >15,:);

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu GPU Computing finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by