Info
この質問は閉じられています。 編集または回答するには再度開いてください。
how to find a window of days in a time series data with values in a range
1 回表示 (過去 30 日間)
古いコメントを表示
I have a time series data from which I need to find a window of days where the start value is >0.4 and end value is <0.2. However, the values in that window range between 0.4 and 0.2. I have this so far. However, my code is finding all values which have a decreasing trend for 10 days.
AA = data;
s = [0;diff(AA)];
ss = sign(s);
ss(AA<0.4)=-1;
ss= ss';
c = conv2(ss,win , 'valid');
win = ones(1,10)*-1;
p = find(conv2(ss, win, 'valid') == -1);
2 件のコメント
Ameer Hamza
2020 年 5 月 1 日
Can you share the data? I there a single window or several windows between 0.2 and 0.4?
回答 (1 件)
Ameer Hamza
2020 年 5 月 2 日
編集済み: Ameer Hamza
2020 年 5 月 2 日
This shows the window of days in which the the value is within the specified range
data = load('data.mat');
AA = data.AA;
mask = (0.2 < AA) & (AA < 0.4);
days = find(mask); % contain the days on which the data is in range
plot(mask)
ylim([-0.2 1.2])

1 件のコメント
この質問は閉じられています。
参考
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!