--- name: estimate_pareto_alpha kind: function lang: py domain: datascience version: "1.0.0" purity: pure signature: "def estimate_pareto_alpha(values: list[float], x_min_percentile: float = 90.0) -> dict" description: "Estima el exponente alpha de una distribución Pareto via MLE. Alpha bajo indica cola más pesada y mayor frecuencia de valores extremos." tags: [estimation, pareto, power-law, heavy-tail, statistics, pendiente-usar] uses_functions: [] uses_types: [] returns: [] returns_optional: false error_type: "" imports: [numpy] params: - name: values desc: "lista de valores numericos positivos donde se sospecha cola pesada (ej: tamanios de ordenes, ingresos). Debe haber >10 valores." - name: x_min_percentile desc: "percentil a partir del cual considerar la cola (tipico: 90.0 para considerar el 10% superior)" output: "dict con {alpha, x_min, n_tail} donde alpha es el exponente estimado (menor = cola mas pesada)" tested: false tests: [] test_file_path: "" file_path: "python/functions/datascience/datascience.py" --- ## Ejemplo ```python import numpy as np # Simular datos con cola pesada values = list(np.random.pareto(2.0, 1000) + 1) result = estimate_pareto_alpha(values, x_min_percentile=90.0) # {'alpha': ~2.0, 'x_min': ..., 'n_tail': 100} ``` ## Notas Usa el estimador MLE de Hill: α = n / Σ ln(xᵢ / x_min). x_min se determina como el percentil indicado de los valores positivos. Retorna alpha=0 si hay menos de 10 valores positivos o la cola tiene menos de 2 elementos. Función pura: requiere numpy instalado.