- Frecuencia absoluta
- Frecuencia absoluta acumulada
- Frecuencia relativa
- Frecuencia relativa absoluta
Vamos a tabular esa información y crear un pequeño gráfico con esos resultados, todo esto lo iremos elaborando con python usando un Notebook de Jupyter. También contestaremos preguntas que se encuentran en el problema que desarrollaremos para llevar a cabo todos los puntos anteriores.
Tipo de valores
Trabajaremos con valores cuantitativos discretos, es decir, aquellos valores que han surgido a partir de un conteo previo, como un censo de un conjunto poblacional y que siempre son un numero entero como por ejemplo:
- Cantidad de materias en un plan de estudios
- Número de integrantes en una entidad
- Número de casas de un desarrollo inmobiliario
Trabajadores
Una empresa que tiene 50 trabajadores se propone reestructurar las remuneraciones, se estudian los años de servicio para crear una tabla de frecuencias.
Carga y visualización de los datos
En primer instancia cargaremos las librerías que creemos necesitaremos, a veces durante el proceso de análisis se suele necesitar de más librerías que las que cargamos en un principio y simplemente se van agregando de acuerdo a la necesidad que se nos presente. En este caso empezaremos por cargas Pandas, Matplotlib y Numpy.
| #Import libraries import numpy as np import matplotlib.pyplot as plt import pandas as pd #Cargamos el archivo CSV data = pd.read_excel("/Users/julio/Desktop/alums.xlsx",sheet_name = "TabDiscreto") #Vemos los primeros datos data.head() |
Ahora para poder empezar a crear nuestra tabla de frecuencias tenemos que obtener únicamente las clases de nuestro dataframa, para esto haremos otro dataframe de la siguiente manera.
| #Dataframe que contendra las clases únicamente #Sacamos los datos únicos de data lis = data["Clases"].unique() #Creamos el dataframe que contendrá las clases dat = pd.DataFrame(lis, columns=["Clases"]) #Observamos las clases que tenemos dat |
| #Tabla de frecuencias absolutas #Obtenes las frecuencias absolutas de cada clase datafi = pd.crosstab(index=data["Clases"], columns = "fi") #Creamos una lista con los valores de las frecuencias li = datafi.values #Agregamos la columna al dataframe dat["fi"] = li #Observamos dat |
| #Tabbla de frecuencia relativa datahi = 100 * datafi["fi"] / 50 datahi = datahi.values #Agregamos nueva columna de frecuentas relativas dat["hi"] = datahi |
| #Obtenemos las frecuencias absolutas acumuladas #Sacamos una lista de los valores donde obtendremos la FI Fi = dat["fi"].values #Recorremos la lista para ir creando una nueva lista con las sumas #Obtener la frecuencia absoluta acumulada a = [] b = 0 for c in Fi: b = c + b a.append(b) #Agregamos la nueva columna Fi al Dataframe dat dat["Fi"] = a |
| #Recorremos lista para obtener la frecuencia relativa acumulada Hi = dat["hi"].values #Obtenemos Hi a = [] b = 0 for c in Hi: b = c + b a.append(b) #Agregamos la nueva columna Hi al Dataframe dat["Hi"] = a |
| #Asignamos labels and sizes para el gráfico labels = dat["Clases"] sizes = dat["fi"] #explode = (0,0.1,0,0) #Dibujamos y creamos el gráfico fig1, ax1 = plt.subplots() ax1.pie(sizes, labels = labels, autopct = '%1.1f%%', shadow = True, startangle = 90) ax1.axis('equal') #Mostramos y guardamos plt.xlabel("Trabajadores") plt.show() plt.savefig("Trabajadores.png") |







No hay comentarios.:
Publicar un comentario