# Clases y objetos Documento original en inglés: [Classes and Objects](https://github.com/Asabeneh/30-Days-Of-Python/blob/master/21_Day_Classes_and_objects/21_classes_and_objects.md) ## Ejercicios ### Ejercicios: Nivel 1 1. Python tiene el módulo llamado estadísticas y podemos usar este módulo para realizar todos los cálculos estadísticos. Sin embargo, para aprender a crear funciones y reutilizar funciones, intentemos desarrollar un programa que calcule la medida de tendencia central de una muestra (media, mediana, moda) y la medida de variabilidad (rango, varianza, desviación estándar). Además de esas medidas, encuentra el mínimo, máximo, recuento, percentil y distribución de frecuencia de la muestra. Puedes crear una clase llamada Estadísticas y crear todas las funciones que realicen cálculos estadísticos como métodos para la clase Estadísticas. Mira la salida a continuación. ```python edades = [31, 26, 34, 37, 27, 26, 32, 32, 26, 27, 27, 24, 32, 33, 27, 25, 26, 38, 37, 31, 34, 24, 33, 29, 26] print('Recuento:', data.count()) # 25 print('Suma: ', data.sum()) # 744 print('Mínimo: ', data.min()) # 24 print('Máximo: ', data.max()) # 38 print('Rango: ', data.range()) # 14 print('Media: ', data.mean()) # 30 print('Mediana: ', data.median()) # 29 print('Moda: ', data.mode()) # {'moda': 26, 'recuento': 5} print('Desviación Estándar: ', data.std()) # 4.2 print('Varianza: ', data.var()) # 17.5 print('Distribución de Frecuencia: ', data.freq_dist()) # [(20.0, 26), (16.0, 27), (12.0, 32), (8.0, 37), (8.0, 34), (8.0, 33), (8.0, 31), (8.0, 24), (4.0, 38), (4.0, 29), (4.0, 25)] ``` ```python # Tu resultado debería lucir de la siguiente manera print(data.describe()) Recuento: 25 Suma: 744 Mínimo: 24 Máximo: 38 Rango: 14 Media: 30 Mediana: 29 Moda: (26, 5) Varianza: 17.5 Desviación Estándar: 4.2 Distribución de Frecuencia: [(20.0, 26), (16.0, 27), (12.0, 32), (8.0, 37), (8.0, 34), (8.0, 33), (8.0, 31), (8.0, 24), (4.0, 38), (4.0, 29), (4.0, 25)] ``` ### Ejercicios: Nivel 2 1. Crea una clase llamada CuentaPersona. Tiene propiedades de nombre, apellido, ingresos, gastos y tiene métodos de total_ingreso, total_gasto, info_cuenta, agregar_ingreso, agregar_gasto y saldo_cuenta. Ingresos es un conjunto de ingresos y su descripción. Lo mismo ocurre con los gastos. [Solución](01_clases_objetos.py) [<< Day 20](../20_Gestor_de_paquetes_de_Python/README.md) | [Day 22 >>](../22_Web_scraping/README.md)