Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- ValuesDetrend = zeros(length(ValoresLidos), 1);
- polyvValues = zeros(length(ValoresLidos), 1)
- %plot(ValoresLidos,'-o')
- j=1;
- ini=1;
- for t=30:30:length(ValoresLidos)
- fim = t-j + 1;
- tempVals = ValoresLidos(j:t);
- mediaTemp = mean(tempVals);
- stdTemp = std(tempVals);
- meanTemp = repmat(mediaTemp, length(tempVals), 1);
- sigmaTemp = repmat(stdTemp, length(tempVals), 1);
- indOutliers = find(abs(tempVals - meanTemp)>3*sigmaTemp);
- %disp(length(indOutliers))
- %disp(j)
- %disp(t)
- for k=1:1:length(indOutliers)
- if(tempVals(indOutliers(k)) > mediaTemp + 3*stdTemp)
- tempVals(indOutliers(k)) = mediaTemp + 2.5*stdTemp;
- end
- if(tempVals(indOutliers(k)) < mediaTemp - 3*stdTemp)
- tempVals(indOutliers(k)) = mediaTemp - 2.5*stdTemp;
- end
- end
- Nv = length(tempVals);
- Tv = 0:Nv-1;
- Tv = transpose(Tv);
- %Tendencias
- ValoresLidos(j:t) = tempVals(ini:fim);
- ValuesDetrend(j:t) = detrend(tempVals, 'constant');
- ValoresLidos_noTrend0(j:t) = ValoresLidos(j:t) - ValuesDetrend(j:t);
- polyfValues = polyfit(Tv, tempVals, 2);
- polyvValues(j:t) = polyval(polyfValues, Tv);
- ValoresLidos_noTrend2(j:t) = ValoresLidos(j:t) - polyvValues(j:t);
- % disp(j)
- j = j +30;
- end
- n = length(ValoresLidos);
- Tm = 0:n-1;
- %figure(1)
- %subplot(3,1,1);
- %plot(ValoresLidos);
- %title('Valores lidos');
- %subplot(3,1,2);
- %plot(ValuesDetrend);
- %title('Tendencia');
- %subplot(3,1,3);
- %plot(ValoresLidos_noTrend0);
- %title('Valores lidos sem tendencia grau 0')
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement