| isolation_forest_outliers |
function |
py |
datascience |
1.0.0 |
pure |
def isolation_forest_outliers(columns: dict, contamination: float = 0.05, max_report: int = 50) -> dict |
Detecta outliers MULTIVARIANTE (filas anomalas considerando todas las columnas a la vez, no columna a columna) con sklearn IsolationForest. Estandariza con StandardScaler, descarta filas con None y usa random_state=0 para resultados deterministas. Devuelve conteo, porcentaje, filas anomalas ordenadas (mas anomala primero) con su score, umbral y dimensiones usadas. Con <2 columnas numericas o <10 filas validas devuelve note 'datos insuficientes' sin petar. |
| eda |
| models |
| outliers |
| anomaly-detection |
| isolation-forest |
| multivariate |
| sklearn |
|
| name |
desc |
| columns |
dict {nombre_columna: [valores numericos]}. Listas alineadas por fila (la fila i de cada columna forma una observacion). Solo se usan columnas cuyos valores sean todos numericos (None permitido por fila, NaN/Inf descartan la columna); el resto se ignora. |
|
| name |
desc |
| contamination |
Proporcion esperada de outliers en [0, 0.5], pasada a IsolationForest. Sube/baja la fraccion de filas marcadas. Default 0.05. |
|
| name |
desc |
| max_report |
Maximo de filas anomalas a devolver en outlier_rows, mas anomala primero. n_outliers cuenta TODAS aunque se trunque el detalle. Default 50. |
|
|
dict {n_outliers: total de filas outlier; outlier_pct: % sobre filas validas (0-100); outlier_rows: lista de {row_index, score} ordenada por score asc (mas anomala primero), truncada a max_report; threshold: umbral de decision (model.offset_), outlier <=> decision_function < threshold; n_rows_used: filas validas tras descartar None; n_features: columnas numericas usadas}. row_index cuenta SOLO las filas validas (sin None), en orden de aparicion empezando en 0 — no es el indice original si se descarto alguna fila. Si <2 columnas numericas o <10 filas validas: {n_outliers: 0, note: 'datos insuficientes'}. |
|
|
|
false |
|
|
true |
| test_cloud_with_three_far_points_flags_them |
| test_insufficient_columns_returns_note |
| test_insufficient_rows_returns_note |
|
python/functions/datascience/isolation_forest_outliers_test.py |
python/functions/datascience/isolation_forest_outliers.py |