Ciencia de datos

¿Siguen las visitas a Analytics Lane la ley de la potencia?

Hace un par de años, en los primeros días del blog, intenté comprobar si las visitas a Analytics Lane seguían la ley de la potencia. Sin obtener en aquel momento un resultado claro. La ley de la potencia es una relación entre magnitudes que se puede observar en múltiples fenómenos de carácter físico, biológico o debido a la actividad humana. Ahora, una vez han aumentado el númoro de páginas y visitas en el blog es un buen momento para revisar si esta ley se verifica o existen otras alternativas más adecuadas como una distribución lognormal.

Paquete para trabajar con la ley de la potencia

En PyPI existe un paquete que facilita con el que se pueden automatizar el análisis de datos para comprobar si estos siguen una ley como la de la potencia o son mejores otras alternativas. Un paquete que se llama powerlaw y se puede instalar simplemente con el siguiente comando

pip install powerlaw

Datos de visitar a Analytics Lane

Para el análisis se van a utilizar los datos de visitas únicas a las 500 páginas más populares durante el pasado mes. Evitando de esta manera el error que puede introducir las búsquedas u otras visitas a las páginas inexistentes.

Ajustando los datos a la ley de la potencia

Al ajustar el número de visitas con la ley se obtiene una gráfica como la siguiente. Una gráfica en la que se ve como los datos no siguen perfectamente la ley, especialmente en las páginas menos visitadas.

Visitas a Analytics Lane modeladas por la ley de la potencia

Distribución Lognormal

Una alternativa para explicar las visitas al blog es una distribución Lognormal. Lo que se puede comparar en la siguiente gráfica.

Visitas a Analytics Lane modeladas por la ley de la potencia y la distribución lognormal

En este caso se puede ver claramente que los datos se ajustan mejor a una distribución Lognormal. Lo que se puede comprobar mediante el método distribution_compare() del paquete powerlaw.

Ley de la potencia truncada

Otra alternativa es la ley de la potencia truncada, una modificación en la que se tiene en cuenta el hecho de usar datos truncados, como es el caso. Solamente se usan las visitas a las 500 primeras páginas. En este caso el resultado con los tres modelos se puede ver en la siguiente gráfica.

Visitas a Analytics Lane modeladas por la ley de la potencia, la distribución lognormal y la ley de la potencia truncada

En este caso es dificil apreciar, pero el modelo basado en la versión truncada es ligeramente mejor que la Lognormal. Algo que también se puede validar con el método distribution_compare().

Los resultados que se muestran en la entrada se pueden conseguir con el siguiente código

import pandas as pd
import powerlaw
from matplotlib.pyplot import legend

visitas = pd.read_excel('visitas.xlsx')

fit = powerlaw.Fit(visitas.Unicas)

fig = fit.plot_ccdf(linewidth = 2)
fit.power_law.plot_ccdf(ax = fig, color = 'r', linewidth = 2, linestyle = '--')
fit.lognormal.plot_ccdf(ax = fig, color = 'g', linewidth = 2, linestyle = '--')
fit.truncated_power_law.plot_ccdf(ax = fig, color = 'b', linewidth = 2, linestyle = '--')
legend(['Visitas', 'Power Law', 'Lognormal', 'Truncate Power Law'])

Conclusiones

En esta ocasión se ha podido comprobar que las visitas a una web, por lo menos en el caso de Analytics Lane, cumple la ley. Aunque para validarlo hay que tener en cuenta que los datos empleados para el análisis suelen estar truncados para evitar ruido causado por visitas que no deberían tenerse en cuenta.

¿Te ha parecido de utilidad el contenido?

Daniel Rodríguez

Share
Published by
Daniel Rodríguez

Recent Posts

Data Lake y Data Warehouse: diferencias, usos y cómo se complementan en la era del dato

En la era del dato, las organizaciones se enfrentan al reto de gestionar volúmenes masivos…

2 días ago

Documentar tu API de Express con TypeScript usando OpenAPI (Swagger)

En la serie Creación de una API REST con Express y TypeScript construimos una API…

4 días ago

Curiosidad: El sesgo de supervivencia, o por qué prestar atención sólo a los que “llegaron” puede engañarte

Durante la Segunda Guerra Mundial, la Fuerza Aérea de Estados Unidos quería reforzar sus aviones…

1 semana ago

Cómo abrir una ventana de Chrome con tamaño y posición específicos desde la línea de comandos en Windows

En muchas situaciones —ya sea para grabar un tutorial, tomar capturas de pantalla profesionales, probar…

2 semanas ago

La Paradoja del Cumpleaños, o por qué no es tan raro compartir fecha de nacimiento

Imagínate en una sala con un grupo de personas, por ejemplo, en una oficina, un…

2 semanas ago

Programador de tareas de Windows: Guía definitiva para automatizar tu trabajo (BAT, PowerShell y Python)

En el trabajo diario con ordenadores, es común encontrarse con tareas repetitivas: realizar copias de…

3 semanas ago

This website uses cookies.