Usemos un conjunto de datos reales de TRAI para analizar las tarifas de datos móviles e intentar ver las velocidades promedio de un operador o estado en particular este mes. También mostrará la facilidad con la que se pueden usar Pandas en datos reales para producir resultados interesantes.
Acerca del conjunto de datos —
La Autoridad Reguladora de Telecomunicaciones de la India (TRAI) publica un conjunto de datos mensuales de las velocidades de Internet que mide a través de la aplicación MySpeed ‚Äã‚Äã(TRAI) . Esto incluye pruebas de velocidad iniciadas por el usuario o pruebas periódicas en segundo plano realizadas por la aplicación. Intentaremos analizar este conjunto de datos y ver las velocidades promedio para un operador o estado específico este mes.
Comprobación de la estructura de datos sin procesar:
- Vaya a TRAI MySpeed ‚Äã‚ÄãPortal y cargue el archivo CSV del último mes en la sección Descargar. También puede descargar el archivo CSV utilizado en este artículo: sept18_publish.csv o sept18_publish_drive.csv
- Abra este archivo de hoja de cálculo.
NOTA . Dado que el conjunto de datos es enorme, el software puede advertirle que no puede cargar todas las filas. es perfectamente Además, si está utilizando Microsoft Excel, puede haber una advertencia sobre la apertura del archivo SYLK. Este error se puede ignorar ya que es un error común en Excel.
Ahora veamos la ubicación de los datos-Nombres de columna en el conjunto de datos
La primera columna es del Operador de red - JIO, Airtel etc.
La segunda columna corresponde a la Tecnología de red: 3G o 4G.
La tercera columna corresponde al Tipo de prueba iniciada: cargar o descargar.
La cuarta columna es la velocidad ​​medida en kilobytes por segundo.
La quinta columna es la Intensidad de la señal durante la medición.
La sexta columna es el Área de servicio local (LSA) , o el círculo donde se realizó la prueba: Delhi, Orissa etc. Nos referiremos a esto simplemente como `estados`.
NOTA. La intensidad de la señal puede ser na (No disponible)
debido al hecho de que algunos dispositivos no pueden interceptar la señal. Ignoraremos el uso de este parámetro en nuestros cálculos para simplificar el proceso. Sin embargo, esto se puede agregar fácilmente como una condición al filtrar.
Paquetes requeridos -
Pandas - a popular kit de herramientas de análisis de datos. Muy potente para procesar grandes conjuntos de datos.
Numpy : proporciona operaciones rápidas y eficientes en conjuntos de datos homogéneos. Usaremos esto junto con pandas y matplotlib.
Matplotlib - es una biblioteca de gráficos. Usaremos su función de trazado de barras para hacer gráficos de barras.
Empecemos a analizar los datos.
Paso #1: Importar paquetes y definir algunas constantes.
|
< clase de código ="espacios indefinidos ">
| < / tr>
Salir:
Kerala - Promedio. Descargar: 26129.27 Promedio. Carga: 5193.46 Rajastán - Promedio. Descargar: 27784.86 Promedio. Carga: 5736.18 Maharashtra - Promedio. Descargar: 20707.88 Promedio. Carga: 4130.46 ARRIBA Este - Promedio. Descargar: 22451.35 Promedio. Carga: 5727,95 Karnataka - Promedio. Descargar: 16950.36 Promedio. Carga: 4720,68 Madhya Pradesh - Promedio. Descargar: 23594.85 Promedio. Carga: 4802.89 Calcuta - Promedio. Descargar: 26747.80 Promedio. Subir: 5655.55 Bihar - Promedio. Descargar: 31730.54 Promedio. Carga: 6599.45 Gujarat - Promedio. Descargar: 16377.43 Promedio. Carga: 3642.89 ARRIBA Oeste - Promedio. Descargar: 23720.82 Promedio. Carga: 5280.46 Orissa - Promedio. Descargar: 31502.05 Promedio. Carga: 6895,46 Tamil Nadu - Promedio. Descargar: 16689.28 Promedio. Subir: 4107.44 Delhi - Promedio. Descargar: 20308.30 Promedio. Subir: 4877.40 Assam - Promedio. Descargar: 5653.49 Promedio. Carga: 2864,47 Andhra Pradesh - Promedio. Descargar: 32444.07 Promedio. Carga: 5755,95 Haryana - Promedio. Descargar: 7170.63 Promedio. Carga: 2680.02 Punjab - Promedio. Descargar: 14454.45 Promedio. Carga: 4981.15 Noreste - Promedio. Descargar: 6702.29 Promedio. Carga: 2966,84 Bombay - Promedio. Descargar: 14070.97 Promedio. Carga: 4118.21 Chennai - Promedio. Descarga: 20054.47 Promedio. Carga: 4602.35 Himachal Pradesh - Promedio. Descargar: 7436.99 Promedio. Subir: 4020.09 Jammu & Cachemira - Promedio. Descargar: 8759.20 Promedio. Carga: 4418.21 Bengala Occidental - Promedio. Descargar: 16821.17 Promedio. Subir: 3628.78
Trazar los datos —
Utilice el método arange ()
de Numpy, que devuelve valores espaciados uniformemente ‚Äã‚Äãoen un intervalo determinado. Aquí, pasando la longitud de la lista estados_finales
, obtenemos valores ‚Äã‚Äãdesde 0 hasta el número de estados en la lista, por ejemplo [0, 1, 2, 3 ...]
Entonces podemos usar estos índices para construir una barra en este lugar. La segunda barra se construye compensando la ubicación de la primera barra por el ancho de la barra.
fig, ax
< clase de código = "palabra clave"> =
bar_width
=
0.25
# columnas, datos para trazar,
# ancho de cada barra y algunas otras
# parámetros opcionales como opacidad y color
plt.bar (index, final_download_speeds,
bar_width, alpha
=
opacidad,
color
=
bar_upload
=
plt.bar ( index
+
bar_width, final_upload_speeds,
bar_width, alpha
=
opacidad, color
=
`g`
`Subir`
)
# nombre del gráfico
plt.title (
+
str
(CONST_OPERATOR))
# etiqueta del eje X
< / p>
plt.xlabel (
`Estados`
)
# etiqueta del eje Y
plt.ylabel (
`Velocidades promedio en Kbps`
)
# una etiqueta debajo de cada una de las columnas,
# coincide con estados
plt.xticks (index
plt .le gend()
# hacer que el diseño del gráfico sea rígido
plt.tight_layout ()
# mostrar gráfico
plt.show()
Histograma de velocidades estimadas
Comparación de datos de dos meses —
Tomemos también datos de otro mes y grafiquémoslos juntos para ver la diferencia en las tasas de datos.
En este ejemplo, el conjunto de datos del mes anterior será el mismo que sept18_publish.csv, y el conjunto de datos del próximo mes — oct18_publish.csv .
Solo tenemos que seguir los mismos pasos de nuevo. Lea los datos de otro mes. Fíltrelo en los marcos de datos posteriores y luego grábelo usando un método ligeramente diferente. Durante la construcción de las columnas, creceremos las columnas 3 y 4 (correspondientes a la carga y descarga del segundo archivo) en 2 y 3 veces el ancho de las columnas para que estén en sus posiciones correctas.
Lógica de compensación al trazar 4 barras
A continuación se muestra la implementación de los datos de comparación durante 2 meses:
|