Outliers, removing 1st and 99th percentiles in dataset
조회 수: 5 (최근 30일)
이전 댓글 표시
Hi, here is my problem :
I have a dataset called "COMP" which includes many variables such as DY, etc...
The variable "DY" includes many zeros (approx 59300) and some negative numbers while the reste is positive for a total of 90483 observations.
I would like to create a function that removes the rows for the observations below the 1st and above the 99th percentiles.
Here is what i have been trying so far :
COMP = sortrows(COMP,'DY','ascend'); find(COMP.DY == prctile(COMP.DY,1))
The problem is that i dont want to remove all the zeros .. just the 1st percentile ....
Thanks for your help
댓글 수: 0
채택된 답변
Roger Wohlwend
2014년 9월 22일
p = prctile(COMP.DY, [1 99]);
COMP.DY(COMP.DY <= p(1)) = [];
COMP.DY(COMP.DY >= p(2)) = [];
추가 답변 (0개)
참고 항목
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!