Skip to content

Commit 245f670

Browse files
committed
up
1 parent b4cdc63 commit 245f670

File tree

3 files changed

+1627
-8372
lines changed

3 files changed

+1627
-8372
lines changed

Diff for: lib/outlier.py

+31
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,8 @@
1313
from pathos.multiprocessing import ProcessingPool as Pool
1414
from sklearn.cluster import KMeans
1515
from sklearn.base import BaseEstimator,TransformerMixin
16+
from sklearn.ensemble import IsolationForest
17+
1618

1719

1820
class OutlierMahalanobis(TransformerMixin):
@@ -297,3 +299,32 @@ def in_any_circle(self,point,centers,d):
297299
radius=d[k+1][1]
298300
incirclek.append(self.in_circle(point,center,radius))
299301
return np.any(incirclek)
302+
303+
class OutliersIsolationForest(TransformerMixin):
304+
305+
def __init__(self,forest,showbar=False):
306+
self.forest=forest
307+
self.showbar=showbar
308+
309+
def get_params(self):
310+
return {"forest": self.forest}
311+
312+
def set_params(self, **parameters):
313+
for key,value in parameters.items() :
314+
setattr(self,key,parameters[key])
315+
return self
316+
317+
318+
def fit(self,X,y=None):
319+
320+
self.forest.fit(X)
321+
322+
return self
323+
324+
def transform(self,X):
325+
326+
a=self.forest.predict(X)
327+
self.iextreme_values=a==-1
328+
329+
330+
return X[~self.iextreme_values]

0 commit comments

Comments
 (0)